AngularJS повторно манипулирует ID

0

Я ищу способ легко манипулировать идентификатором в ng-repeat. Например, скажем, у меня есть клиент в таблице клиентов с customerId. Я использую этот customerId в другой таблице, такой как заказы. Теперь, когда я извлекаю данные из заказов для пользователя, чтобы увидеть в таблице ng-repeat, я хотел бы изменить customerId на имя customerName для визуальных целей, но фактически не изменяя физическое значение, просто отображаемое.

Мой первый, хотя, я вижу, что это возможно при запросе списка заказов в php-скрипте, чтобы запросить только имя customerName на основе customerId из таблицы клиентов и добавить в массив заказов, но это кажется очень длинным и не таким как я могу манипулировать в DOM. Моя вторая мысль была фильтром, хотя запросы ajax, похоже, не являются жизнеспособной опцией в фильтре.

Может кто-то указать мне верное направление?

Приветствия.

  • 0
    минимальный воспроизводимый пример , пожалуйста.
  • 0
    Я полагаю, вы загружаете это из базы данных? Вы можете объединить таблицы в своем запросе SQL, чтобы он возвращал как идентификатор, так и имя. Кроме того, если у вас есть клиент на внешнем контроллере в вашем угловом контроллере, вы можете просто указать этот объект клиента. Не видя ваш код, на самом деле невозможно дать вам более подробную информацию о том, как решить эту проблему.
Показать ещё 2 комментария

1 ответ

1
Лучший ответ

Переходя к "ответу", чтобы я мог отформатировать это лучше.

Предполагая, что у вас есть две таблицы. Заказы с столбцом внешнего ключа, называемым CustomerID и таблицей Customers, которые имеют столбец первичного ключа CustomerID. Вы бы присоединились к ним со всеми полями Заказы. У меня нет mysql, поэтому синтаксис может немного меняться, но это идея:

SELECT Customers.CustomerName, Orders.OrderID, Orders.SomeField
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName 
WHERE Order.OrderId = 1234;

Это прямо из http://www.w3schools.com/sql/sql_join_left.asp

  • 0
    Отлично, так что это возможно. Подробнее рассмотрим это, так как я впервые присоединяюсь к запросам :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню