Русскоязычный форум, посвященный фреймворку Kohana http://forum.kohanaframework.su/ |
|
вопрос по ORM http://forum.kohanaframework.su/viewtopic.php?f=33&t=292 |
Страница 2 из 2 |
Автор: | AmberLEX [ 08 авг 2012, 11:25 ] |
Заголовок сообщения: | Re: вопрос по ORM |
Ну да, этот запрос не поможет Код:
|
Автор: | Rush64 [ 08 авг 2012, 22:57 ] |
Заголовок сообщения: | Re: вопрос по ORM |
модели же получаются связанные. если делать запрос с with() пример: Код:
что-то вроде этого. в таких запросах where относится только к user, или к role тоже |
Автор: | AmberLEX [ 08 авг 2012, 23:06 ] |
Заголовок сообщения: | Re: вопрос по ORM |
Нужно пробовать, но думаю, чтобы использовать with нужно описать связь не через through with строит тоже join |
Автор: | Rush64 [ 09 авг 2012, 10:08 ] |
Заголовок сообщения: | Re: вопрос по ORM |
нет, не обязательно. through нужно использовать для связи много ко многим, когда нужна связующая табличка. а один ко многим юзает просто фореин кей. with будет работать, но неизвестно или будет работать where для with |
Автор: | AmberLEX [ 09 авг 2012, 11:59 ] |
Заголовок сообщения: | Re: вопрос по ORM |
А что вам дает ->where('role','<>','admin')? У админа все равно есть роль login |
Автор: | mamahtehok [ 09 авг 2012, 13:18 ] |
Заголовок сообщения: | Re: вопрос по ORM |
where будет относиться толmrj к инициализируемой модели, т.е. к with модели относится не будет. и да where('role','<>','admin') работать не будет так, как это просто выберет всех строки в которых не присутствует admin, но пользователь с правами admin имеет строку с правами login. Необходимо еще как-то выкинуть пользователей, которые имеют права admin, из результатов пользователей с правами login. |
Автор: | AmberLEX [ 09 авг 2012, 13:52 ] |
Заголовок сообщения: | Re: вопрос по ORM |
Да этот вариант самый нормальный Код:
Думаю если наворотить одним запросом, то он будет намного сложнее и не факт, что не будет вложенного. И не так наверное часто нужен список только из пользователей, без других ролей. Админ тоже пользователь, зачем его обижать и выкидывать со списка))) На крайний случай, если нужно распределение по ролям и все сложно, нужно искать соответствующий модуль Kohana ACL или подключить Zend ACL и работать. Элегантного решения, как вам хотелось наверное нет) |
Автор: | Sergey [ 09 авг 2012, 15:36 ] |
Заголовок сообщения: | Re: вопрос по ORM |
AmberLEX писал(а): Да этот вариант самый нормальный Код:
А прикольно получается Я использовал такой код, для получения пола (муж/жен) в котролёре: Код:
Ну и ещё мне нужно было в модели написать следующее: Код:
Оказалось можно выкинуть из модели этот метод, а в котролёре написать: Код:
Вот она, вся сила ORM |
Страница 2 из 2 | Часовой пояс: UTC + 4 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |