Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#876 Re: Laravel 5.x » Не могу установить Laravel 5 в Windows 7 » 25.06.2015 16:32:00

php /path/to/composer.phar composer global require "laravel/installer=~1.1"  выдает ошибку

а пробовал не писать масло масленное?
php /path/to/composer.phar global require "laravel/installer=~1.1"  обычно НЕ выдает ошибку

#877 Re: Laravel 5.x » Route » 25.06.2015 16:28:23

sergey243 пишет:

Подскажите, можно писать роуты типа:
Route::get('/user/{id}/{title}','AuthController@index'); ?
C {title} работает, вместе с {id} выдает ошибку

sergey243 пишет:

Нашел ошибку: В title пишу хэш, а у него есть символы '/', поэтому выдает ошибку.
Подскажите как передать в адресной строке слэш

rusbear28 пишет:

а зачем в хэше нужен символ "/" ?

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

хотите обработать сео-ссылку , - делайте как взрослые люди

Route::get('/user/{id}-{title}'

в контроллере отсекаете всё, что за первой цифрой, включая дефис.
далее, получив id уже работаете с моделью.

#878 Re: Laravel 5.x » Ajax laravel » 25.06.2015 16:22:41

нет, спасибо. работы много, личная жизнь полна приключений... не хочу обнадёживать, но спрашивай трудные места на форуме. кто-то поможет всегда.

#879 Re: Laravel 5.x » Добавление в 2 таблицы одновременно » 25.06.2015 16:21:05

через модельки/orm - можно.
запросами работать, это как граблями снег подметать на футбольном поле во время снегопада.

#880 Re: Laravel 5.x » Вывод в три колонки » 25.06.2015 16:19:40

+ 800 простых запросов SELECT FROM WHERE в php рекурсии быстрее работают, чем кол-во JOIN'ов равное количеству уровней дерева. это относительно деревьев...

#881 Re: Laravel 5.x » Вывод в три колонки » 25.06.2015 16:18:22

2 варианта действия.
1) вышеописанный Progdancer - через счётчик .
только недописан вариант: проверка должна быть вида ($x%3 == 0)?true:false -- это грубая проверка на каждое третье вхождение
2) генерить под каждую колонку контент отдельно, 3 раза.
спорить, что это нагружает сервер не нужно. PHP обычно кушает до 40% от массы SQL, - зачастую стоит подумать об оптимизации серверного окружения...

#882 Re: Laravel 5.x » Переопределить значение из обьекта Request » 25.06.2015 16:12:14

1.

$client = $this->client->store($request->all());
совет:
$client = $this->client->store($request->except(['_token']));
+ там же указать всё, что не должно входить в модель. это правило хорошего тона.

2.

что тебе говорит термин setter/getter ?

#883 Re: Laravel 5.x » Регистронезависимый поиск Eloquent » 25.06.2015 16:09:48

если бд PostgreSQL то используй ILIKE и забудь о проблеме

#884 Re: Laravel 5.x » Регистронезависимый поиск Eloquent » 25.06.2015 16:09:13

бд/таблицы mysql должны быть в кодировке utf8_general_ci
где ci - означает непривязанность к регистру.

#886 Re: Laravel 5.x » Подключение стилей » 25.06.2015 16:05:30

Не изобретайте велосипед
Ещё ни один проект не вышел на достаточную динамичность переподключаемых ассетов в зависимости от страницы.
Ни одна подобная поделка мной в Production не замечена, и есть о чём задуматься.
Поэтому используйте 1 из двух вариантов:
1) всегда все ссылки и редиректы прогоняйте через https -- URL::secure('/assets/bootstrap/css/bootstrap.min.css')
потому что в скором времени даже мозила откажется от не секьюрного протокола передачи данных.
http://habrahabr.ru/post/252507/
2) альтернативный способ для работы (ТОЛЬКО) с ассетами -- писать абсолютные пути от DOCUMENT_ROOT хоста -- '/assets/bootstrap/css/bootstrap.min.css'. этот метод обеспечит динамичность выбора протокола (он не указан в ссылке) средствами браузера.
То есть если вы открываете http, то бессмысленно писать ассеты в https и наоборот - огребёте варнинги и ошибки.

идельно описано по ссылке выше - пишите по варинту 2 и не придумывайте велосипед. лучше всё равно не придумаете.

#887 Re: Laravel 5.x » Помогите с реализацией раздела новостей » 24.06.2015 18:08:24

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

#888 Re: Laravel 5.x » Не подключаеться css и JS » 24.06.2015 18:04:33

возможно у него document_root не в public smile)))))))
...как всегда у новеньких...

#889 Re: Laravel 5.x » Где создать общие переменные и функции, видные везде » 24.06.2015 17:58:55

ТС исмел (вероятно) ввиду класс-сателлит или некую библиотеку с рнр-"функционалом" smile

- сделай модельку Lib и клади в неё статические функции. в принципе обеспечит все нужды
вызов \App\Lib::myMethod($params);
или {{\App\Lib::myMethod($params)}} <= это в принципе нарушение mvc; и не вызывай методы из шаблона, которые не взаимодействуют с View (то есть в итоге view ничего не выводят) - это мягко-говоря уже грубое нарушение mvc

#890 Re: Laravel 5.x » Ajax laravel » 24.06.2015 17:56:34

а по правильному читай мануалы. есть ещё и респонзер у лары

#891 Re: Laravel 5.x » Ajax laravel » 24.06.2015 17:56:05

Матчасть:
изучи термин программирования:
"точка входа в приложение"
"точка конфигурирования приложения"

Практическая честь:
- сделай маршрут/контроллер, обрабатывающие конкретные запросы.
при этом проверяй условия кто, откуда и как запросил (обеспечь безопасность, чтобы не уДдОсИлИ)
и на выхлоп echo json_encode > die

#892 Re: Laravel 5.x » Интеграция с форумом » 18.06.2015 17:01:01

надо сначала думать, а потом гуглить, а то вопросы будут неверные...
1) зависит от форума и его апи.
2) возможно и лару и форум стоит завернуть на 3-й ресурс со своим апи.
исследуй тему SSO - Single Sign On

суть темы в том, что авторизация (ПОСТ-запрос) уходит на 3й сайт, он ставит куку авторизации, и последовательно кидает (редиректом например) на все ресурсы своей сети, где везде проставляет куки авторизации (типа уже вошёл).

всё. авторизован везде. больше ничего не надо делать.

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

#893 Re: Laravel 5.x » Интеграция с форумом » 16.06.2015 17:17:25

чтобы выдать решение (solution) необходимо иметь техническое задание (tech specification)

#896 Re: Laravel 5.x » Eloquent. Связь через третью таблицу » 04.06.2015 14:08:39

ну если поиском никак не воспользоваться, то включи мозг и почитай список тем.
пивоты, усложнение жизни
Выборка с БД через 3ю таблицу
наконец почитать документацию
http://laravel.com => Documentation (http://laravel.com/docs/5.0) =>
1) http://laravel.com/docs/5.0/eloquent#relationships
2) http://laravel.com/docs/5.0/schema

Не стоит начинать изучать повозку с экскрементальных крошек на дороге wink

#897 Re: Laravel 5.x » пивоты, усложнение жизни » 04.06.2015 12:29:07

Админ! Переименуй плиз тему в "Сложные пивоты, полиморфы, их count() и другое"
Тема обещает быть интересной, если народ не слезет.

#898 Re: Laravel 5.x » пивоты, усложнение жизни » 04.06.2015 12:25:10

пока использую следующее решение:

public function countPosts()
{
            return $this
                ->hasMany( 'App\Post', 'postable_id' )
                ->selectRaw( 'postable_id, count(*) as count' )
                ->where('postable_type', '=', 'App\Bort')
                ->groupBy('postable_id');
}
{{$blog->countPosts->first()->count}}

Это решение из инета и оно устраивает (пока) только по причине предварительного сбора данных на уровне контроллера/модели, а не дёрганья их из вьюшки

#899 Re: Laravel 5.x » пивоты, усложнение жизни » 04.06.2015 12:20:03

Однако интересное решение, НО.
Представь, что это нужно (в принципе других ТЗ не существет), чтобы показать во вьюшке, ради того, чтобы информировать сидящего перед монитором. Не более, ни менее.
И так уже MVC в ларе прозрачный до такой степени, что уже задумываешься "а нахрена".
Т.е. во вьюшке я должен сказать

{{$blog->posts()->count()}}

Согласитесь, что хоть и работает, но ЭТО НЕ ПРАВИЛЬНО !

#900 Re: Laravel 5.x » Проблема с составлением запроса к бд » 04.06.2015 12:16:28

установи EMS SQL Manager (для твоей БД My/Pg/Ora/MS)
ТАМ отладь свой запрос, и уже на основе него-родного пиши в ларе.
(все) будьте разумнее!

Подвал раздела