2016-05-19 3 views
-1

Обычно мы получаем данные из таблицы отношений родителя, и мы получаем запись о своде и его реляционной таблице в laravel, но можем ли мы получить запись с помощью сводной таблицы в красноречивой?Получение записи в обратном порядке из сводной таблицы в laravel

Как я хочу получить запись о продукции из сводной таблицы с ее количественной записью, которая делает ее уникальной, поэтому я хочу получить данные о продуктах из сводной таблицы. Можем ли мы сделать это в laravel?

Спасибо.

ответ

0

Вы можете использовать встроенные функции построения запросов для генерации данных таблицы в обратном порядке для этого. , например.

$ users = DB :: table ('users') -> orderBy ('id', 'desc') -> get();

вернет вам массив, который упорядочен по обратному отношению к идентификатору пользователя. далее вы можете использовать еще множество функций. Пожалуйста, ознакомьтесь с документацией.

https://laravel.com/docs/4.2/queries#advanced-wheres

+0

Извините Используйте последнюю документацию https://laravel.com/docs/5.2/queries#where-clauses – HelpingHand

+0

Спасибо за ваш ответ, но я пытаюсь получить данные в обратном порядке. Как получение родительских данных с использованием записи сводной таблицы. например Получение информации о продуктах из идентификаторов опорных таблиц. Можем ли мы сделать это в laravel? –

+0

Таким образом, вы можете добавить столбец в сводную таблицу с указанием идентификатора продукта определенной строки. Я думаю, теперь вам нужны некоторые знания о связях с базами данных. Ниже приведен пример того, как создать такую ​​взаимосвязь между таблицами Order Order и ordered_Items. – HelpingHand

0

В этом примере думать, как клиент заказывает пункт из нашего магазина. Затем вы сможете отслеживать элементы в заказе, детали клиента, количество и т. Д. Таким образом, мы можем сделать это, используя следующие классы.

  • Заказчик
  • Заказать
  • Order_Item
  • Item

Итак, сначала мы должны упомянуть отношения базы данных в модели. например у клиента есть много заказов. Таким образом, в модели Customer указывается это как функция следующим образом.

порядок общественные функции() {

  return $this->hasMany(App\Order); 

}

Также в заказ Модель

публичной функции заказчика() {

 return $this->belongsTo(App\Customer); 

}

Whe n, разбирая файл миграции, вы должны оставить неподписанный столбец intiger для customer_id в таблице заказов. При сохранении данных вы должны сохранить соответствующий customer_id в деталях заказа. , например. Таблица заказов будет выглядеть следующим образом.

  • идентификатор (без знака, aoutoincrement, целое число)
  • customer_id (без знака, целое число)
  • TOTAL_PRICE
  • и т.д. И имейте в виду, что, чтобы сохранить автоматическое приращение идентификатора в таблице клиентов в таблице заказов Пользовательский ИД.Или пусть laravel сделает это за вас, используя удобный метод или, например,

$ order-> customer_id = $ customer-> id // предполагая, что у вас есть объект клиента, вышедший выше. Однако я предпочитаю сохранять идентификатор вручную, поскольку он более ясен для меня.

Поэтому, когда вы хотите найти клиента определенного порядка, оставьте его в таблице клиентов с идентификатором клиента. , например.

$ customer = Customer :: where ('id', $ order-> customer_id) -> first();

Если вы хотите найти заказы конкретного клиента вы можете сделать это, как,

$ orders_array = Order :: где ('customer_id', $ на клиента> идентификатор) -get();

Таким образом, вы можете легко пересечь обе стороны. Я не понял, что вы имели в виду под сводной таблицей. Являются ли таблицы Pivot в Excel, если вы могли бы описать больше.

+0

Спасибо за подробный ответ. Очень ценю это. :) Но на самом деле я говорил о сводной таблице laravel, которую мы обычно используем для многих-многих отношений. И мы фактически не делаем модель этой таблицы в laravel, которую я предполагаю, не является традиционным способом. Может быть, мы можем, но я не видел нигде или в любом примере, где мы делаем модель сводной таблицы. –

+0

Подробнее о сводной таблице здесь: http://laraveldaily.com/pivot-tables-and-many-to-many-relationships/ Теперь в laravel мы можем легко получить записи из сводной таблицы, используя ее родительское отношение/модель. Но мы не можем легко получить запись непосредственно из сводной таблицы. То, что я хочу сделать. Я думаю, что я должен сделать модель и попробовать с этим. Спасибо. –

+0

Извините за невозможность помочь. – HelpingHand

Смежные вопросы