2015-11-15 5 views
0

привет Нужны некоторые предложения
У меня есть три столовыеLaravel Один к одному отношению с поворотным столом

personal_details
вакансия

и сводная таблица

personal_detail_vacancy

сводная таблица содержит vacancy_id и personal_detail_id (пользователь, который подал заявку на открытую вакансию), моя проблема отправляет некоторый файл personal_detail_id в список горячих списков для конкретной вакансии. поэтому я должен добавить поле состояния в сводной таблице или создать таблицу Hotlists с соотношением один к одному с поворотным столом. который лучше, пожалуйста, помогите

ответ

0

Я не уверен, что такое «горячий список», но если вам нужно установить флаг для каждой записи в сводной таблице, вы можете создать столбец boolean status и получить доступ к нему следующим образом :

$person = PersonalDetails::find(1); 

foreach ($person->vacancies as $vacancy) 
{ 
    echo $vacancy->pivot->status; 
} 
+0

Действительно hotlist - это выбор некоторых пользователей для интервью со сводной таблицы. yes Я попытался помещать поле статуса в сводную таблицу, но когда я попытался обновить значение состояния, используя синхронизацию, невыбранный идентификатор автоматически удаляется из сводной таблицы. – sanu

+0

Вот как работает sync(). Он заменяет опорные отношения для этого объекта только тем, что вы предоставляете в массиве sync(). Похоже, вы хотите использовать attach(), который добавляет дополнительную запись в сводную таблицу и не уничтожает существующие. Или, если вы собираетесь использовать синхронизацию, убедитесь, что массив, в который вы проходите, содержит все существующие опорные отношения для этой записи. См. Http://laravel.com/docs/5.1/eloquent-relationships – djt

+0

Да, но есть ли другой способ? просто чтобы изменить дополнительное значение поля выбранного идентификатора и предотвратить удаление других. attach() добавит новую строку, но мне нужно обновить существующую запись. – sanu

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