[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Задача на основе Active Record
Страницы: 1, 2
Эли4ка
Цитата (twin @ 14.02.2019 - 16:22)
Ну удобство - дело субъективное. Апологеты говорят что очень удобно, тут тебе самой выбирать. Я про то, что это уже не совсем актив рекорд получится. И если ты его пытаешься сюда присуропить, должна это понимать.

А если комбинировать? например данные которые не массив-AR, остальные как хочется?
twin
А у тебя нет выбора. Тут все просто - связующая таблица (куча) не имеет первичных ключей. Соответственно полноценный AR для неё не сделаешь. Так что придется комбинировать. Посмотри еще раз метод link() в том же уишном актив рекорд. Этот метод для того и сделан, чтобы сию проблему нивелировать.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Valick
twin, таблица связи вполне себе может состоять исключительно из одного первичного ключа (на два, три, и тд полей)

_____________
Стимулятор ~yoomoney - 41001303250491
twin
Актив рекорд предполагает наличие уникального идентификатора. А в таблице связей м-к-м их нет. И уж тем более нет смысла в первичном ключе.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Эли4ка
Спасибо всем. буду что-нибудь да пробовать.
Michael
Цитата (Эли4ка @ 14.02.2019 - 15:17)
Yii2 это на крайний случай.

Сейчас даже у Yii его AR можно отдельно подключить. А с Eloquent это давно так, может всегда и было.

ИИ-шная AR например умеет работать с составным первичным ключем, тоже как бы не последняя вещь. Для таблицы связи спокойно AR объект можно будет создать по 2-ум полям, чтобы через него данные добавлять.

_____________
There never was a struggle in the soul of a good man that was not hard
Эли4ка
Цитата (Michael @ 16.02.2019 - 08:07)
Eloquent

Я с ним совсем немного работала, мне там понравились такие штуки:
1) Функции, которые объединяют два метода.
2) и когда имя поля можно прям подставить в функцию, то есть сделать не так:

$users = User::where('approved', 1)->get();

а так:
$users = User::whereApproved(1)->get(); 

Но говорят это глупость так делать. не знаю, мне нравится ;)
на этом мое знакомство с Eloquent прекатилось. После вашего сообщения еще раз поработаю с ним..
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.