Фреймворки

grigori

( ͡° ͜ʖ ͡°)
Команда форума
с валидацией в контроллерах - это вообще писец, напиши что валидация - это обработка, и надо для нее создавать модель, которая, к примеру, наполняет себя из параметра - так разрыв шаблона обеспечен
 

AllReady

Новичок
Что касается админок, как они обычно реализуются ? Берут готовые реализации ? Я например нашёл frozenNode, посмотрел примеры. Вроде удобная и легкая
 

Adelf

Administrator
Команда форума
А еще если добавить что валидация форм - это одно, а бизнес-валидация - это другое и все эти 'unique' rules в Laravel - вообще не в тему, то еще лучше.
 

fixxxer

К.О.
Партнер клуба
Что касается админок, как они обычно реализуются ?
А чем "админка" отличается от остального кода? Да ничем, кроме прав доступа. Работа с теми же моделями.

Или ты про клепание сайтиков с CMS-ками? Это обсуждать вообще неинтересно.
 

AllReady

Новичок
А чем "админка" отличается от остального кода? Да ничем, кроме прав доступа. Работа с теми же моделями.

Или ты про клепание сайтиков с CMS-ками? Это обсуждать вообще неинтересно.
Ну, я про отдельные админки вообще не знал, пока не увидел один курс. Вдруг начну делать свою админку, а мне скажут, что делаю свой велосипед и трачу время попросту :)
 

fixxxer

К.О.
Партнер клуба
Где увидел, у какого-нибудь, хоспадипрости, попова, чтоли? Развидь :)

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

fixxxer

К.О.
Партнер клуба
Какой адъ. Развидь. В целом я бы посоветовал вообще избегать русскоязычных материалов, почти ни разу не видел ничего вменяемого.

По ссылке @AmdY я еще мальца потыкал - там норм, смотри там.
 

AllReady

Новичок
У меня вопрос, возможно и глупый: есть у нас модель постов. Я например получаю пост типа: Post::where('id', '=', $id)->first();
Возвращается объект типа Post ? Суть не в этом. Я так понял писать что-то типа Post::join неправильно. Недавно увидел курс (не русскоязычный канал) , он создал метод в классе пост:
PHP:
    public function getPosterLogin() {
        return \App\Models\User::where('id', $this->user_id)->first()->name;
    }
Затем, просто вызывает этот метод и возвращает имя пользователя. Этот вариант будет правильным ? Или правильнее будет создать метод user и осуществить связь $this->belongsTo('User') ? В этом случае, получим все поля пользователя. Понимаю что в первом случае можно написать return \App\Models\User::where('id', $this->user_id)->first() и тогда тоже будет получен объект и мы получим доступ ко всем полям пользователя. И где вообще можно находить ответы на подобные мелочи ? На форуме ларавела таких вопросов нет. А с английским, особенно разговорным, чтобы понять, у меня плохо...
 
Последнее редактирование:

Adelf

Administrator
Команда форума
Правильнее обьявить прямую связь с моделью User с помощью belongsTo и после этого getPosterLogin будет таким:
PHP:
public function poster()
{
    return $this->belongsTo(\App\Models\User::class);
}

public function getPosterLogin()
{
    return $this->poster->name;
}
 

AllReady

Новичок
Я прошу прощения, вопрос относительно вакансий в веб студиях. Пишут часто, нужны люди знающие фреймворк (напр. ларавел). Что обычно подразумевается под "знающие фреймворк" ?
И почему, все же Yii лидирует среди Российских фирм ?
 

AllReady

Новичок
Немного поработал с проектом link to repository. С блоками include, сессиями, связями в eloquent и наконец начал применять бутстрап (некоторые моменты). Сейчас хочу поработать с валидацией. Посмотреть как она реализуется. Что можно реально сделать в блоге, чтобы охватить несколько разделов с документации laravel'a ?
 

AllReady

Новичок
@AllReady, Что это? https://github.com/Muradg/laravel/blob/master/app/Http/Controllers/PostController.php#L37
Не только одна строка, а весь код.

Кажется, что вы копипастой откуда-то строки кода копируете, не понимая их смысла.
А смысл мне учиться тогда ? Там изначально проверка другая была, можно просто откинуть условие в моем случае. Ну не углядел этот момент. Что значит весь код ? Вы не сравнивайте меня с человеком который знает Фреймворки. Максимум что я скопировал, так это моменты с орм ларавела
 

AmdY

Пью пиво
Команда форума
Мы добиваемся того, тобы ты прочёл документацию, а не копипастил с сомнительных источников. Вот идёшь на http://laravel.com/docs/5.1/requests
Первый же пример намекает что стомт использовать DI
public function store(Request $request)
На то же странице http://laravel.com/docs/5.1/requests#retrieving-input
$request->input('name', 'Sally');
И ещё много полезной информации которая позволит и кода меньше писать и сделать его качественнее.

Вон в недавней теме та же проблема http://phpclub.ru/talk/threads/На-что-обратить-внимание-при-обучении.81246/#post-736075

Начал потрогал, а до конца не дочитал и дело не доделал.
 

Absinthe

жожо
Там изначально проверка другая была, можно просто откинуть условие в моем случае.
Проверки делаются валидатором. Без дополнительных классов так:
PHP:
$this->validate($request, [
    'first_name' => 'required|max:255',
    'last_name' => 'required|max:255',
    'email' => 'required|email|unique:users,email|max:255',
    'password' => 'required|confirmed|min:6',
]);
Но лучше это выделить в отдельный Request класс.

Вы не сравнивайте меня с человеком который знает Фреймворки
Хотя-бы прочитай документацию по фреймворку. Всю.
Я понимаю, что это займет несколько дней, но это нужно сделать обязательно.
 

AllReady

Новичок
@AmdY @Absinthe так я же не копирую с сомнительных источников. Я вообще стараюсь не копировать. Я прочитал почти все разделы на русскоязычном сайте. И беру примеры с использованием фасада: https://laravel.ru/docs/v5/requests как раз таки тут, получаем данные без внедрения зависимости. Тоже самое: http://laravel.com/docs/5.0/requests
А какой вариант из них применять, на офф сайтах не указано. И так как разницы в моей ситуации практически нет, то беру первый попавшийся. Но теперь я понял свою ошибку, и вот когда я дошёл до валидации, я понимаю, что моим вариантом я не смогу её сделать.
 
Последнее редактирование:

fixxxer

К.О.
Партнер клуба
не копирую с сомнительных источников
на русскоязычном сайте
Официального русскоязычного сайта не существует. Достоверность любительских устаревших переводов - под большим сомнением.

А какой вариант из них применять, на офф сайтах не указано.
Это все же документация, а не учебник, хотя мне тоже не нравится, что там до сих пор есть примеры с фасадами. Если коротко - не используй фасады вообще.
 
Сверху