Pull to refresh

Comments 9

$this->user_roles = Model::factory('User')->user_roles($this->user->id);
а разве нельзя
$this->user_roles = $this->user->roles;
?
isset($config_security[$this->class_id][$action])
тоже слабенько
В конфигах необходимо постоянно писать этот бойлерплейт «Controller_ *», да и вообще создается впечатление, что с фреймворком недавно работаете,
foreach($this->configs as $config)
{
$this->template->set_global($config, Kohana::$config->load($config)->as_array());
}
Странное решение имхо.
если интересно узнать все огрехи — стучите в личку, если нет — сэкономим друг другу время)
UPD
не обижайтесь, но весь метод user_roles() это просто свалка говнокода.
UPD2
Ну и ценность статьи на мой взгляд ничтожна
В конфигах необходимо постоянно писать этот бойлерплейт «Controller_ *», да и вообще создается впечатление, что с фреймворком недавно работаете,


В конфигах питшется полный путь до контроллера, если у Вас контроллер будет в директории admin, то писать например так Controller_Admin_Index.

не обижайтесь, но весь метод user_roles() это просто свалка говнокода.


Почитайте документацию на офф сайте, по вашему мнению там тоже говонокод в примерах моделий?
>В конфигах питшется полный путь до контроллера, если у Вас контроллер будет в директории admin, то писать например так Controller_Admin_Index
Вы видимо читали невнимательно, зачем везде писать «Controller_», если он есть у каждого элемента 1-го уровня?
>Почитайте документацию на офф сайте, по вашему мнению там тоже говонокод в примерах моделий?
При чем тут документация? Или Вы этот метод оттуда взяли? Если да — потрудитесь ссылочку указать. У Вас тут куча ненужного кода и Вы явно не понимаете, как работает ORM и как к ней нужно писать методы.
Самый простой способ забрать роли — $user->roles->find_all(). Если уж так хочется свой метод и «переоформить» вывод
public function user_roles(){
return $roles = $this->roles->find_all()->as_array(NULL,'name');
}
Легко заметить, что так же исчез ненужный параметр и из 10-ти строк осталось 1. Если результат один и тот же результат в 10 раза больше кода занимает — что это, если не говнокод?
И да, реагируйте пожалуйста адекватно
Не слышал о нем. Спасибо, посмотрю что там есть)
А мы просто прикрутили Zend_Acl — прекрасный компонент.
user_roles заменяется одной строкой

$roles = $auth->get_user()->roles->find_all();
Да, спасибо! Я не знал про метод roles =(

Теперь буду знать. Сейчас получаю список ролей так: $this->user->roles->find_all()->as_array()
roles — это не метод. Это динамическое обращение к связи (в данном случае Many-To-Many)
Sign up to leave a comment.

Articles