These are chat archives for LaravelRUS/chat

26th
Mar 2015
LaravelButler

Приветствуем Вас, @silasvasconcelos, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

LaravelButler

Приветствуем Вас, @muxahuk, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

LaravelButler

Приветствуем Вас, @svsg2013, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

LaravelButler

Приветствуем Вас, @mizhgan, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Константин Брызгалин
@constb
Mar 26 2015 05:07
вчера эликсир люто вынес мне мозг. он пытался задачи запускать параллельно, из-за этого у меня то одно не скомпилируется, то скомпилируется но не хватает плагинов внутре, то версионирование не ко всем ассетам применится. оказывается это уже пофиксили, но npm категорически отказывается его автоматом обновлять - npm install, npm update - нулевой эффект. пока явно не сказал ему npm install laravel-elixir - только тогда обновился. wtf?!!
Роман Сохарев
@greabock
Mar 26 2015 05:09
@constb б-гоберзский джаваскрипт =)
Роман Сохарев
@greabock
Mar 26 2015 06:59
Ребят, у меня тут странная ситуация. Допустим, есть такой юзкейс, когда мне очень неудобно подмешивать csrf в теле запроса, но вполне удобно передать его в заголовках. Будет ли это нормальным решением, если я, кроме тела запроса буду проверять на наличие токена еще и заголовок (при этом наличие хотя бы одного из них - в теле или в заголовке - будет удовлетворительным )? Не таит ни каких подводных камней?
Orel
@2byte
Mar 26 2015 07:02
@greabock популярные сайты юзают токены в заголовках и вроде ничего
Роман Сохарев
@greabock
Mar 26 2015 07:06
ох я туплю
там же так и происходит по умолчанию
вот я глупый
NelinD
@NelinD
Mar 26 2015 07:10
@greabock пепла?
Роман Сохарев
@greabock
Mar 26 2015 07:10
одно ведерко, пожалуйста
NelinD @NelinD
NelinD @NelinD дает одно ведерко пепла @greabock под 25% годовых
Роман Сохарев
@greabock
Mar 26 2015 07:11
нереальный процент какой-то - я пас
NelinD
@NelinD
Mar 26 2015 07:12
@greabock поздняк метаться+)
Роман Сохарев
@greabock
Mar 26 2015 07:13
окей...
а теперь его еще и зашифровать нужно походу
Crypt что ли
Константин Брызгалин
@constb
Mar 26 2015 07:19
@greabock можно нешифрованный передать в X-CSRF-Token
jquery-ujs так делает
в ларе это где-то в 5.0.1х добавили
Роман Сохарев
@greabock
Mar 26 2015 07:20
@constb оу, ну раз у тебя опыт имеется

то поясни мне, будь добр. Как так выходит? Пытаюсь прозвонить токен. И на один запрос.

Log::info($request->session()->token() . '=' . $request->header('X-CSRF-TOKEN'));

получаю тройной лог

[2015-03-26 07:19:32] local.INFO: fci7w8A2T6dkNOoWv61bFxACr5gtb4hEzf82Qm3J====  
[2015-03-26 07:19:32] local.INFO: fci7w8A2T6dkNOoWv61bFxACr5gtb4hEzf82Qm3J====fci7w8A2T6dkNOoWv61bFxACr5gtb4hEzf82Qm3J  
[2015-03-26 07:19:44] local.INFO: fci7w8A2T6dkNOoWv61bFxACr5gtb4hEzf82Qm3J====fci7w8A2T6dkNOoWv61bFxACr5gtb4hEzf82Qm3J
при чем, в первый раз как видно пустой
хотя....
стоп
я соврал
NelinD
@NelinD
Mar 26 2015 07:26
@greabock кредит?
Константин Брызгалин
@constb
Mar 26 2015 07:28
я дебагбаром пользуюсь - у него есть вкладка messages - видно все сообщения которые сгенерированы конкретным реквестом
и данные запроса и сессии он тоже умеет сам выводить
Роман Сохарев
@greabock
Mar 26 2015 07:39
ладно я с этим разобрался
теперь другая проблема
токен я с куки получил, в посредника он приходит
а вот dercrypt не хочет делать
DecryptException' with message 'Invalid data'
сам собой, речь теперь уже идет об x-xsrf-token, а не о csrf
Константин Брызгалин
@constb
Mar 26 2015 07:43
@greabock правильно. в x-xsrf-token он ждёт криптованный токен, а в x-csrf-token - простой
Роман Сохарев
@greabock
Mar 26 2015 07:43
ну вот открой, посмотри куку xsrf-token, она там уже шифрованная
Константин Брызгалин
@constb
Mar 26 2015 07:44
@greabock ну это уже другое дело. мы про куку говорим или про токен?
Роман Сохарев
@greabock
Mar 26 2015 07:44
эм...
Molodkovets Bohdan
@atcdot
Mar 26 2015 07:44
Привет. Как-то можно заставить работать пагинацию при использовании find()?
Что-то типа такого, только чтобы работало $posts = Post::find($posts_id)->paginate(7);
Константин Брызгалин
@constb
Mar 26 2015 07:45

@greabock с jquery-ujs всё намного проще - в шапку кладётся

    <meta name="csrf-param" content="_token">
    <meta name="csrf-token" content="{{ csrf_token() }}">

и он добавляет токен в заголовок для аякс-запросов и в формы тоже.

если врукопашную делать запросы - достаточно токен в мете передать и сделать
            $.ajaxSetup({
                headers: {
                    'X-CSRF-Token': $('meta[name="csrf-token"]').attr('content')
                }
            });
alexfc
@alexfc
Mar 26 2015 07:48
@ggcstop find возвращает один элемент
какая тут пагинация может быть?
Molodkovets Bohdan
@atcdot
Mar 26 2015 07:51
@alexfc блин, точно...
Роман Сохарев
@greabock
Mar 26 2015 07:54
@constb это какая-то наркомания
вот сделал как у тебя и все работает
но мне это не подходит
В общем, спасибо, пойду далше копать
Константин Брызгалин
@constb
Mar 26 2015 07:57
@greabock почему наркомания. вполне рабочий метод. jquery-ujs рубистами используется - лара просто поддерживает те же соглашения. получается php-on-rails =)
ты просто пишешь, а оно просто работает. =)
Роман Сохарев
@greabock
Mar 26 2015 07:58
@constb я не о способе, я о том, что у меня что-то не выходит )
NelinD
@NelinD
Mar 26 2015 08:00
слон, ты зачем аккаунт грибка сломал?
Роман Сохарев
@greabock
Mar 26 2015 08:00
м?
@NelinD успокойся, я говорил "наркомания", когда это еще не стало мейнстримом )))
NelinD
@NelinD
Mar 26 2015 08:02
@greabock =)
Роман Сохарев
@greabock
Mar 26 2015 08:05
а вообще, я просто злюсь, что у меня что-то не выходит так, как я хочу )
NelinD
@NelinD
Mar 26 2015 08:06
@greabock ты точно не слон?
alt
LaravelButler

Приветствуем Вас, @Cooli88, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Vitaly Gorbunov
@cezar62882
Mar 26 2015 09:11
Всем привет!
LaravelButler

Приветствуем Вас, @rohitvvv, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Vitaly Gorbunov
@cezar62882
Mar 26 2015 09:11
снова жара в чате?
Cooli88
@Cooli88
Mar 26 2015 09:12
Привет
Роман Сохарев
@greabock
Mar 26 2015 09:20
@Cooli88 доброго
LaravelButler

Приветствуем Вас, @Anton-Revyakin, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:34
Привет всем, начинаю изучать Ларавел, не пойму ничего, установил, все. В папке public файл index.php, в нем содержимое. Его удалять или оставлять? Если оставлять, то до какой строки должен быть мой код?
После строки <code>$request = Illuminate\Http\Request::capture();</code> - ничего не выполняется
Что такое Illuminate?
Cooli88
@Cooli88
Mar 26 2015 09:38
там ничего не трож, я yii-шник ну думаю не сильно отличается
найди папку controllers
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:39
нет такой папки
глянь сча
какая версия laravel?
сча разверну
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:41
5-я
в папке app Commands/ Console/ Events/ Exceptions/ Handlers/ Http/ Providers/ Services/ User.php
Cooli88
@Cooli88
Mar 26 2015 09:41
сча
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:41
ок
я думал, что сайт должен лежать в папке public
Константин Брызгалин
@constb
Mar 26 2015 09:43
@Anton-Revyakin начни с чтения документации, ок?
паблик содержит только index.php, само приложение живёт за пределами доступной веб-серверу папки.
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:44
@constb Читаю, вот Маршруты из примера:
[code]Route::get('/', function()
{
return 'Hello World';
});[/code]
Константин Брызгалин
@constb
Mar 26 2015 09:44
в паблик только статика кладётся и elixir туда ассеты компилирует, если им пользуешься.
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:44
как его посмотреть, что оно мне вернуло?
Константин Брызгалин
@constb
Mar 26 2015 09:44
открыть / веб-браузером
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:44
как здесь кстати теги ставить?
@constb открыл - пусто, хоть echo 'hello', хоть return 'echo'
Роман Сохарев
@greabock
Mar 26 2015 09:45
Константин Брызгалин
@constb
Mar 26 2015 09:45
надпись Supports GitHub flavored markdown в поле ввода ни о чём не говорит?
@Anton-Revyakin значит что-то не то открыл или не туда маршрут вписал
Роман Сохарев
@greabock
Mar 26 2015 09:46
@Anton-Revyakin маршруты лежат в app/Http/routes.php
там маршруты и писать
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:47
да, я открыл
так, создаю проект:
laravel new site в /home/anton/www/
потом в апаче пишу путь к сайту: /home/anton/www/site/public?
Роман Сохарев
@greabock
Mar 26 2015 09:47
так нельзя
Константин Брызгалин
@constb
Mar 26 2015 09:47
@Anton-Revyakin если приложение будет жить в site - да
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:47
или как выше написали, что там статика, поэтому public не дописываю
ну да, там будет
Константин Брызгалин
@constb
Mar 26 2015 09:48
нет, всё правильно, в апаче надо public корнем указывать
Роман Сохарев
@greabock
Mar 26 2015 09:48
@Anton-Revyakin ой нет, все верно
в общем сервер должен смотреть в public
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:48
code
Константин Брызгалин
@constb
Mar 26 2015 09:49
маршруты живут в app/http/routes.php, контроллеры в app/http/controllers
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:50
о, да, нашел контроллеры
Cooli88
@Cooli88
Mar 26 2015 09:52
короч пока развернется вы все уже решите))
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:52
ага, вот роут:
```
ой
Route::get('/', 'WelcomeController@index');
получается выполняется из класса WelcomeController функция index?
Роман Сохарев
@greabock
Mar 26 2015 09:53
типа того
и при этом, запроc GET
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:54
да, это понял
вот это функция:
        public function index()
        {
                echo '!!!';
                return view('welcome');
        }
Роман Сохарев
@greabock
Mar 26 2015 09:55
Никаких echo
забудь об этом
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 09:55
ааа, а чего?
а как выводить?
на работе отвлекают от изучения...сейчас вернусь...
LaravelButler

Приветствуем Вас, @JeremiahGeronimo, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 10:00
Привет. Подскажите, пожалуйста, что лучше подключить для генерации элементов форм. Чтобы можно было настраивать вплоть до классов. Либо проще будет написать контроллер?
Роман Сохарев
@greabock
Mar 26 2015 10:00
Former
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 10:00
тут
Роман Сохарев
@greabock
Mar 26 2015 10:01
@JeremiahGeronimoдока на русском
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 10:02
Благодарочка! То что надо =)
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 10:02
буду дальше читать доку, спасибо
А еще - в файле config/app.php ключ 'key' => env('APP_KEY', 'SomeRandomString') каким методом шифровать? md5('какое-нибудь значение')?
Роман Сохарев
@greabock
Mar 26 2015 10:04
там просто случайная строка должна быть
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 10:05
ок, спс
Роман Сохарев
@greabock
Mar 26 2015 10:07
@JeremiahGeronimo но там не все описано. Не так давно @NelinD, при моем скоромном участии, расширил formers/former#453 функционал для селектов
Константин Брызгалин
@constb
Mar 26 2015 10:08
php artisan key:generate генерит ключ на место SomeRandomString
LaravelButler

Приветствуем Вас, @AnnaCher, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 10:31
@greabock Увы, не получается установить его через composer из консоли.
Роман Сохарев
@greabock
Mar 26 2015 10:32
как ты это делаешь?
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 10:32
добавил в requires. в консоли composer update.
anahkiasen/former dev-master requires illuminate/translation ~4.2 -> satisfiable by illuminate/translation[v4.2.1, v4.2.12, v4.2.16, v4.2.17, v4.2.2, v4.2.3, v4.2.4, v4.2.5, v4.2.6, v4.2.7, v4.2.8, v4.2.9].
Роман Сохарев
@greabock
Mar 26 2015 10:33
лара пятерка?
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 10:34
кусок из composer.json
"require": {
"laravel/framework": "5.0.*",
"anahkiasen/former": "dev-master"
},
да
Роман Сохарев
@greabock
Mar 26 2015 10:34
для пятерки нужно подключать 4.0 ветку
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 10:35
так что ли?
"require": {
"laravel/framework": "5.0.",
"laravel/framework": "4.0.
",
"anahkiasen/former": "dev-master"
},
Роман Сохарев
@greabock
Mar 26 2015 10:36
нет, нет нет
что ты
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 10:36
=)
Роман Сохарев
@greabock
Mar 26 2015 10:36
"anahkiasen/former": "~4.0@dev",
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 10:36
спасибо, попробую
Роман Сохарев
@greabock
Mar 26 2015 10:37
вообще такие вещи правильнее писать из консоли
composer require anahkiasen/former и он сам подрубит совместимую ветку
ну или по крайней мере должен подрубить )
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 10:39
спасибо, ценная информация. еще вопрос, я так понимаю если я не укажу классы или другие атрибуты, их не будет?
Роман Сохарев
@greabock
Mar 26 2015 10:40
ну да
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 10:40
понял, спасибо
Константин Брызгалин
@constb
Mar 26 2015 10:49
а у кого-нибудь под рукой есть сниппет, как из реквеста user-agent получить?
не изобретай велосипед
Константин Брызгалин
@constb
Mar 26 2015 10:54
@ruelephant не, это перебор, мне надо только строчку сохранить в заказе. на будущее.
Request::header('user-agent') всё нашёл
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 11:03
@greabock из под тегов blade выводит обычным текстом на страницу. что-то можно сделать, кроме использования php тегов?
Роман Сохарев
@greabock
Mar 26 2015 11:04
используй неэкранированный вывод {!! Former !!}
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 11:05
да, получилось
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 11:08
А где находятся классы например Route? Хочу рассмотреть какие методы по работе с роутом есть
А хотя ща может в IDE проект создам...а то через консоль все смотрю :-)
Alexander Popov
@ruelephant
Mar 26 2015 11:15
@constb ну и сохранил бы из массива, так надежнее
потом это парсить будет сложно
Константин Брызгалин
@constb
Mar 26 2015 11:20
@ruelephant почему? что get_browser что jenssegers/laravel-agent вполне нормально умеют анализировать произвольного агента, не только из хэдеров.
Alexander Popov
@ruelephant
Mar 26 2015 11:20
я имею введу что из базы потом выборку не сделать если ты сырец положишь
сразу бы по полям разложил
Константин Брызгалин
@constb
Mar 26 2015 11:22
@ruelephant со временем код анализа может меняться, улучшаться, может потом будет более подробный анализ. в любом случае сейчас всё равно нигде не отображается, больше на будущее сохранено.
Alexander Popov
@ruelephant
Mar 26 2015 11:22
только ты имей введу там все что угодно может быть
вплоть до иньекции
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 11:24
а зачем так делать?
'/composer' . '/autoload_real.php'
я то думал ларавел уже вылизали код, а нет, ошибок много светит, то ; лишняя то кавычка в json'e лишняя
Alexander Popov
@ruelephant
Mar 26 2015 11:31
у тебя в последней фразе лишнее слово "лишнее" лишнее :)
LaravelButler

Приветствуем Вас, @ianciu, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Anton Revyakin
@Anton-Revyakin
Mar 26 2015 11:35
@ruelephant ну уже не могу редактировать)
unlike777
@unlike777
Mar 26 2015 11:35

Ребята нид хэлп

if (is_numeric($color_id)) {
            $goods->whereExists(function($query) {
                $query->select(DB::raw(1))
                    ->from('egood_color')
                    ->where('color_id', '=', $color_id)
                    ->whereRaw(table_prefix('egoods.id = egood_color.e_goods_id'));
            });
        }

как передать $color_id в замыкание?

Константин Брызгалин
@constb
Mar 26 2015 11:37
function ($query) use ($color_id)
unlike777
@unlike777
Mar 26 2015 11:37
блин :D спасибо
Roman
@starikovr
Mar 26 2015 11:37
:0
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 11:38
главный файл сайта Index.php в public?
а зачем в вышележащем файле server.php подключается public/index.php?
ianciu
@ianciu
Mar 26 2015 11:40
где могу найти хорошое док. про leftjoin, laravel 5. Спосибо
?
Константин Брызгалин
@constb
Mar 26 2015 11:57
@ianciu в документации по mysql наверное =)
Alexander Popov
@ruelephant
Mar 26 2015 12:00
вредные советы, если надо передать переменную в замыкание юзай $_GLOBALS
ибо оно наше все
Vitaliy Stepanenko
@Nayjest
Mar 26 2015 12:01
@ianciu если есть готовый SQL запрос, который нужно выразить через query builder, покажи пример запроса, подскажем
Roman
@starikovr
Mar 26 2015 12:02
@ruelephant щас научишь кого нибудь:(
Константин Брызгалин
@constb
Mar 26 2015 12:07
@ruelephant во-во, ты шутишь, а они потом пишут-пишут, глядишь, твою ж мать, опять битрикс получился!!
NelinD
@NelinD
Mar 26 2015 12:10
@constb не упоминай битрикс
Константин Брызгалин
@constb
Mar 26 2015 12:11
@NelinD больная тема?
Alexander Popov
@ruelephant
Mar 26 2015 12:11
не упоминай в суе
NelinD
@NelinD
Mar 26 2015 12:12
@constb черезвычайно
Alexander Popov
@ruelephant
Mar 26 2015 12:12
ибо ты согрешил
Роман Сохарев
@greabock
Mar 26 2015 12:14
Ковыряю ember, вроде прикольно )
Константин Брызгалин
@constb
Mar 26 2015 12:15
у нас студия на нём работает, приходится грешить много и часто. сейчас когда проект на ларе делаю и из-за техподдержки приходится туда-сюда переключаться, разница в уровне чувствуется особо остро и болезненно.
@greabock эмбер вообще чума, только времени чтобы в него врубиться надо многовато. с нашими дедлайнами никогда так до него и не доходят руки, всё на jquery по-быстрому слабал, сдал и уже следующий горит.
когда-нибудь я им тоже займусь вплотную. в нём как раз все вкусности финализируют и выкатят в продакшен.
Роман Сохарев
@greabock
Mar 26 2015 12:16
@constb нормальной документации по нему очень мало
Alexander Popov
@ruelephant
Mar 26 2015 12:17
народ кто senty подключал к laravel?
Роман Сохарев
@greabock
Mar 26 2015 12:17
ну то есть доки там как раз отличные, но они слишком дистиллированные
Константин Брызгалин
@constb
Mar 26 2015 12:17
я сентри в yii использовал. а что там? он же простой вроде
@greabock во-во. куча магии - как что надо назвать чтобы получить какой-то эффект - вообще мозг ломает. не так написал - ничего не работает.
Alexander Popov
@ruelephant
Mar 26 2015 12:19
нашел пакет - clowdy/laravel-raven
буду пробывать
Роман Сохарев
@greabock
Mar 26 2015 12:19
@constb ну я вот собрал простую тудушку на ларе+эмбер. Вроде ничего так
LaravelButler

Приветствуем Вас, @Khomutov, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Alexander Popov
@ruelephant
Mar 26 2015 12:20
а что за ембер?
еще одна замена nodejs?
Роман Сохарев
@greabock
Mar 26 2015 12:20
нет, фрейм для фронта
emberjs.com
Константин Брызгалин
@constb
Mar 26 2015 12:20
@ruelephant если так формулировать, то скорее замена для angular
только никакая это не замена, это настоящая мегаштука, после которой на angular вообще смотреть не хочется
Roman
@starikovr
Mar 26 2015 12:21
рббрб ангулар
Роман Сохарев
@greabock
Mar 26 2015 12:22
@constb ну хз у них там двоечка планируется, может чего и придумают
Константин Брызгалин
@constb
Mar 26 2015 12:22
@greabock вот именно. а в эмбере уже всё придумали и продумали.
Роман Сохарев
@greabock
Mar 26 2015 12:24
однако, после моих "приключений путешейственника по скоупам" в двух частях, меня в холодный пот бросает при упамянании "углового"
этот тупняк, когда ты для того чтобы добраться до соседнего контроллера идешь сначала вверх по дереву скоупов на три этажа, а потом спускаешься опять на три... клоунада.
И стопудово там как-то это проще делается, и "я просто не умею его готовить", но решения зачастую настолько неочевидные, что хочется волосы на пятой точке рвать.
в общем, эмбер сейчас как глоток свежего воздуха
Alexander Popov
@ruelephant
Mar 26 2015 12:29
[Symfony\Component\Debug\Exception\FatalErrorException]
Call to undefined method Illuminate\Config\Repository::package()
O_o
это в консоли
Роман Сохарев
@greabock
Mar 26 2015 12:29
это пакет для четверки, судя по ошибке
Константин Брызгалин
@constb
Mar 26 2015 12:29
да, у сентри по-моему пятая лара в отдельной ветке должна быть
Alexander Popov
@ruelephant
Mar 26 2015 12:30
а как правильно удалять пакеты?
они же публикуют себя еще во все щели
Роман Сохарев
@greabock
Mar 26 2015 12:30
О_о
Alexander Popov
@ruelephant
Mar 26 2015 12:30
ну например php artisan vendor:publish --provider="clowdy\laravel-raven\RavenServiceProvider" --tag="config"
он же получается скопировал свое барахло в общий проект
Роман Сохарев
@greabock
Mar 26 2015 12:32
тут только руками походу
Константин Брызгалин
@constb
Mar 26 2015 12:32
ага. если проект под гитом, можно реверт сделать или целиком резетить.
Alexander Popov
@ruelephant
Mar 26 2015 12:39
а где правильно можно поставить App::error?
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 12:40
есть файл *.json. Получаю его при помощи File::get() и записываю в переменную, которую отдаю во вьюху. В ней переменная недоступна. json_decode() выдает ошибку. Есть стандартные средства, которыми можно преобразовать содержимое?
Alexander Popov
@ruelephant
Mar 26 2015 12:41
В ней переменная недоступна O_o
ну если она не доступна, то причем тут json_decode?
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 12:42
она доступна для вывода, только я из нее не могу вытягивать данные как из массива
$var - отдает json-подобную строку, не могу обратиться, например, $var->key
Константин Брызгалин
@constb
Mar 26 2015 12:45
@JeremiahGeronimo видимо она всё-таки не является валидным json'ом раз json_decode ошибку выдаёт.
тогда только если каким-то образом её преобразовать в валидный json
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 12:47
он валидный, с файлом все нормально. ибо через обычные функции вне фреймворка все работает
и он не мной писался, и вряд ли людьми
к тому же ide ничего по этому поводу не говорит
Orel
@2byte
Mar 26 2015 12:49
@ruelephant App:error в пятерке ?
Константин Брызгалин
@constb
Mar 26 2015 12:52
@JeremiahGeronimo ну значит надо смотреть что json_decode получает, на что жалуется. посмотреть в логах, пошуровать отладчиком. а то так это классический "стук в подвале"...
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 12:55
По какой-то причине File::get() отдает мне строку с экранированными кавычками. любое действие над переменной в плане json_decode или json_encode просто выбивает ошибку во вьюхе
Orel
@2byte
Mar 26 2015 12:57
В Eloquent нету метода ->exists() ?
unlike777
@unlike777
Mar 26 2015 12:57
есть просто ->exist
свойство
Alexander Popov
@ruelephant
Mar 26 2015 12:59
@2byte хз
LaravelButler

Приветствуем Вас, @Mouhamedtec, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Orel
@2byte
Mar 26 2015 13:00
@ruelephant всмысле хз? Ты в пятерке думаешь куда его деть?
Alexander Popov
@ruelephant
Mar 26 2015 13:00
ага
я уже засунул в handler
Orel
@2byte
Mar 26 2015 13:01
@ruelephant А стандартное место отлова не?
Alexander Popov
@ruelephant
Mar 26 2015 13:01
а Handler::report стандратное средство
Orel
@2byte
Mar 26 2015 13:03
Похоже раньше был exists у eloquent
Alexander Popov
@ruelephant
Mar 26 2015 13:03
вроде бы был
щаз пропал
вчера только искал
Orel
@2byte
Mar 26 2015 13:04
Вчера был?
Alexander Popov
@ruelephant
Mar 26 2015 13:04
вчера не было
Orel
@2byte
Mar 26 2015 13:04
А ну значит посчитали что first с этим справится )
Alexander Popov
@ruelephant
Mar 26 2015 13:05
рекомендуют ->get и проверка на null или count
лучше count конечно
Orel
@2byte
Mar 26 2015 13:08
Не, first лучше
Alexander Popov
@ruelephant
Mar 26 2015 13:09
count лучше
он выбирает select count(*)
что будет быстрее select * from table limit 1
но самое быстрое это select 1 from table как и работает exist по грамотному
Orel
@2byte
Mar 26 2015 13:09
@ruelephant не сказал бы
Константин Брызгалин
@constb
Mar 26 2015 13:11
@ruelephant не совсем. select 1 вернёт по одной единичке на каждую запись - то есть тысяча записей - тысяча строк с единичкой. count в этом плане эффективнее.
Alexander Popov
@ruelephant
Mar 26 2015 13:11
@constb там limit 1 ставят
Azamat
@azamat-sharapov
Mar 26 2015 13:12
привет всем. Плохо ли выводить session flash без escape? то есть во view:
{!! session('html_message') !!}
Константин Брызгалин
@constb
Mar 26 2015 13:12
@ruelephant а. не подумал.
@azamat-sharapov у тебя пользовательский ввод в flash попадает? если да, то нельзя.
alexfc
@alexfc
Mar 26 2015 13:13
@azamat-sharapov если пользователь не может туда ничего добавить то все ок
Alexander Popov
@ruelephant
Mar 26 2015 13:13
не факт
возможно в другом месте есть уязвимость
скажем там берутся данные из бд, которые добавляются юзвером с другого места
такие места надо избегать вообще
alexfc
@alexfc
Mar 26 2015 13:14
я же говорил, что пользовательский ввод туда не попадает
Alexander Popov
@ruelephant
Mar 26 2015 13:14
ну ввод это именно значения из $_REQUEST
alexfc
@alexfc
Mar 26 2015 13:15
не
ввод это ввод =)
Alexander Popov
@ruelephant
Mar 26 2015 13:15
с бд это вывод :)
лучше бы пример дал что туда попадает
Orel
@2byte
Mar 26 2015 13:16
count будет считать все строки, а 1 селект норм
Alexander Popov
@ruelephant
Mar 26 2015 13:16
@2byte не все, а только которые попали в условие where
Azamat
@azamat-sharapov
Mar 26 2015 13:17
нет, текст берется из lang файла. Решил на всякий случай узнать, потому что не уверен
Alexander Popov
@ruelephant
Mar 26 2015 13:18
кстати есть особый путь
SELECT EXISTS(SELECT * FROM table1 WHERE ...)
но это для эстетов
Azamat
@azamat-sharapov
Mar 26 2015 13:18
в lang использую немного html для форматирования текста. Не знаю есть ли другой способ хотя
Константин Брызгалин
@constb
Mar 26 2015 13:21
@azamat-sharapov надо тогда брать и весь lang перелопачивать, заменять переводы строк на <br> заменять html entities, много-много изменений.
я бы не стал заморачиваться, сделал бы какой-то минималистичный вариант bbcode или markdown и парсил бы его регэкспами перед выводом.
alexfc
@alexfc
Mar 26 2015 13:23
а для чего в lang добавлять html?
в чем профит такого решения?
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 13:25
интересно авторы ларавела по национальности не индусы?
Константин Брызгалин
@constb
Mar 26 2015 13:25
@alexfc наверное дизайн требует. например придумал дизайнер ссылку в сообщении - будь добр, реализуй
Azamat
@azamat-sharapov
Mar 26 2015 13:25
проще будет во view проверить ключь flash сообщения и выводить через {!! !!} для определенных ключей) а те ключи в коде пропишем,
session('good-to-go', '<strong>blah</strong>')
Константин Брызгалин
@constb
Mar 26 2015 13:25
@Anton-Revyakin тейлор америкос. из арканзаса по-моему.
Alexander Popov
@ruelephant
Mar 26 2015 13:26
надо срочно перестать использовать laravel и php
переходить на отечественное
Константин Брызгалин
@constb
Mar 26 2015 13:26
по-моему код на индусский ничуть не похож. всё грамотно спроектировано, пользователи рельсов больше над пхпшниками не смеются =)
@ruelephant БИТРИКС?!!
Alexander Popov
@ruelephant
Mar 26 2015 13:26
битрикс на php
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 13:26
            if ($request->ajax())
            {
                return response('Unauthorized.', 401);
            }
            else
            {
                return redirect()->guest('auth/login');
            }
Можно б было:
return $request->ajax() ? response('Unauthorized.', 401) : redirect()->guest('auth/login');
Alexander Popov
@ruelephant
Mar 26 2015 13:26
вот если бы его переписали на 1с языке
вот это были бы скрепы
Константин Брызгалин
@constb
Mar 26 2015 13:27
@ruelephant не говори
Azamat
@azamat-sharapov
Mar 26 2015 13:27
@alexfc чтобы например ссылку добавить
Константин Брызгалин
@constb
Mar 26 2015 13:28
@Anton-Revyakin по-моему такая структура кода выбрана для наглядности. чтобы видно было что откуда и почему.
@azamat-sharapov попробуй использовать маркдаун - с ним сложнее попасть на XSS
Alexander Popov
@ruelephant
Mar 26 2015 13:29
но операционка то останется от сша :(
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 13:29

А вот из примера: http://laravel.su/docs/5.0/middleware#registering-middleware
Теперь вы можете назначить этот middleware роуту или группе:

Route::get('admin/profile', ['middleware' => 'auth', function()
{
    //
}]);

Это в моем созданном миддлВар писать?

Alexander Popov
@ruelephant
Mar 26 2015 13:29
надо сначало на эльбрусы перейти
@Anton-Revyakin это в route.php
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 13:30
А, ой да, спасибо
Azamat
@azamat-sharapov
Mar 26 2015 13:30
@constb да думаю не стоит для такой мелочи. Если сообщений очень много будет в lang, то да, хорошая идея
Alexander Popov
@ruelephant
Mar 26 2015 13:31
кстати по поводу локализации
как бы все вместе сделать
и backend и frontend
и что бы переводчики переводли через интерфейс
Alex Soveliev
@suroviy
Mar 26 2015 13:32
а что конфиги в пятой ларе более одного уровня вложения не сделать больше?
я имею в виду каталоги
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 13:33

А вот в файле app/Http/Kernel.php в методе $routeMiddleware:

protected $routeMiddleware = [
    'auth' => 'App\Http\Middleware\Authenticate',
    'auth.basic' => 'Illuminate\Auth\Middleware\AuthenticateWithBasicAuth',
    'guest' => 'App\Http\Middleware\RedirectIfAuthenticated',
];

Ключи auth, auth.basic, guest - это гет переменные?

Константин Брызгалин
@constb
Mar 26 2015 13:33
@Anton-Revyakin нет, это алиасы, их потом подключаешь в конструкторе контроллера с $this->middleware('auth')
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 13:37
@constb А, создаю OldMiddleWare, потом регистрирую его в Kernel в массиве $routeMiddleware например ключем temp, выбираю в контроллере $this->middleware('temp'), а потом в контроллере могу к методам класса OldMiddleWare обращаться через $this?
Роман Сохарев
@greabock
Mar 26 2015 13:49
@ruelephant посмотри, как этот механизм реализован на xenforo, там это очень удобно сделано
xenforo, вообще адовый комбайн... там столько всего реализовано, что иногда страшно становится
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 13:55
А middleware "session" где взять? У меня его нет, хотя написано, что он идет с Ларавел
JeremiahGeronimo
@JeremiahGeronimo
Mar 26 2015 14:11
@lang('language.line') как можно правильно вывести сюда переменную?
упс
Alexander Popov
@ruelephant
Mar 26 2015 14:12
@Anton-Revyakin да он вроде бы не middleware
там отдельный класс доступа к нему
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:13
Например, middleware "session", поставляемый с Laravel, записывает данные сессии в хранилище после отправки ответа браузеру. Для этого вы можете определить middleware как "terminable".
Сейчас поищу где он
terminable как я понимаю прекращает фоновые действия типа логирование Ларавел?
Alexander Popov
@ruelephant
Mar 26 2015 14:14
нее ты не понял
когда ты создаешь свой middleware кроме функции handle которая вызывается до вызова контролера
есть функция terminate которая вызывается после
это как деструктор
Alexander Popov
@ruelephant
Mar 26 2015 14:19
но она не просто так появляется, надо дополнительно реализовать интефейсTerminableMiddleware
и для ее работы он middleware должна быть прописана глобально
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:26
Спасибо, ща буду понимать :-)
Alexander Popov
@ruelephant
Mar 26 2015 14:27
*шепотом* в документации это написано
но тут половина канал не знаю про эту тайну
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:35
та читаю ж мануал
LaravelButler

Приветствуем Вас, @mxmche, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:39
О, нашел аж в vendor\laravel\framework\src\Illuminate\Session\Middleware\StartSession.php
Alexander Popov
@ruelephant
Mar 26 2015 14:42
и нафига? :)
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:43
та по ману ж иду
так, создам я терминейтед и его надо зарегать в Kernel глобальном?
Alexander Popov
@ruelephant
Mar 26 2015 14:43
ага
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:44
ой, интерфейс надо создать как-то...
Alexander Popov
@ruelephant
Mar 26 2015 14:44
всмысле?
Роман Сохарев
@greabock
Mar 26 2015 14:46
он короче собирается сам руками сессии запускать походу...
Alexander Popov
@ruelephant
Mar 26 2015 14:46
@Anton-Revyakin чувак, тебе не надо его трогать
если тебе нужны сессии имено
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:47
А, просто use Illuminate\Contracts\Routing\TerminableMiddleware потом наследую интерфейс TerminableMiddleware иии...
Alexander Popov
@ruelephant
Mar 26 2015 14:47
не наследуем, а реализуем
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:47
а, реализуем)
Alexander Popov
@ruelephant
Mar 26 2015 14:47
и что и?
ты middleware либо в роутинги подрубай либо глобально
в случаи с Terminable только глобально
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:48
ну я создал миддлвар OldMiddleWare
Alexander Popov
@ruelephant
Mar 26 2015 14:48
подключил?
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:48
<?php

namespace site\Http\Middleware;

use Closure;

class OldMiddleWare {

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next) {

        if ($request->input('age') < 200) {
            return redirect('home');
        }

        return $next($request);
    }

}
Alexander Popov
@ruelephant
Mar 26 2015 14:49
ну
только TerminableMiddleware подруби
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:49
потом в кернет метода $routeMiddleware добавляю 'old' => 'site\Http\Middleware\OldMiddleWare'
Alexander Popov
@ruelephant
Mar 26 2015 14:49
нууу
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:49
ааа, отак use Illuminate\Contracts\Routing\TerminableMiddleware?
Alexander Popov
@ruelephant
Mar 26 2015 14:49
в документации ты пример не читал?
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:50
и class OldMiddleWare implements TerminableMiddleware
да, я его читаю
Alexander Popov
@ruelephant
Mar 26 2015 14:50
да
и еще use не забудь
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:52
потом я должен этот терминейтед добавить в глобальный:
    protected $middleware = [
        'Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode',
        'Illuminate\Cookie\Middleware\EncryptCookies',
        'Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse',
        'Illuminate\Session\Middleware\StartSession',
        'Illuminate\View\Middleware\ShareErrorsFromSession',
        'site\Http\Middleware\VerifyCsrfToken',

        'Illuminate\Contracts\Routing\TerminableMiddleware' <=этим я регистрирую глобально терминейтед
    ];
Alexander Popov
@ruelephant
Mar 26 2015 14:53
ага
пока все верно
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:54
и терминейтед метод желательно везде использовать? Чтоб Ларавел фоново что-то не делал? Только хз, что он делает...как понял пишет логи какие-то...
Alexander Popov
@ruelephant
Mar 26 2015 14:54
ты не понял
метод предназначен что бы ты в нем что-то делал
движок работает и без него прекрасно
он просто его вызовет и пойдет дальше все убивать
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:55
Так а зачем он нужен тогда?
Alexander Popov
@ruelephant
Mar 26 2015 14:56
если тебе нужно после завершение всего что-то сделать еще
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:56
Или он нужен тогда, когда данные отправлены в браузер
ааа
Alexander Popov
@ruelephant
Mar 26 2015 14:56
он вообще не нужен
но если тебе нужно, можно туда свой код вписать
он как handle
только после всего
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:57
вот блин, спасибо, зато понял для чего он :)
Alexander Popov
@ruelephant
Mar 26 2015 14:58
там в документации сказано НАПРИМЕР он используется в механизме сесси стандартном
Anton Revyakin
@Anton-Revyakin
Mar 26 2015 14:59

та я прочитал:

Иногда, middleware может понадобиться проделать некоторую работу после того как HTTP ответы были отправлены в браузер.
Подумал, что Ларавел что-то там делает фоново и это можно предотвратить

Так, ща домой та познавать Контроллеры :-)
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 15:04
Ку
грёбанная лара, чтоб Тейлора во все... кхм, простите
оказывается имя миграций имеет значение
если назвать миграцию create_some_table - она анализирует имя и пытается сама дропнуть таблицу some во время rollback
ппц
это надо так придумать, а главное нахрена
а теперь предлагаю показать где это описано в доках
для-тех-кто-не-вкурсе
LaravelButler

Приветствуем Вас, @soubhik-kayako, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

ldarikl
@ldarikl
Mar 26 2015 15:35
Здравствуйте, поставил пакет localized-carbon на laravel 5, после вызова метода diffForHumans все даты имеют вид вот такой "4 localized-carbon::units.hour назад", подскажите пожалуйста что я сделал не так?
Alexander Popov
@ruelephant
Mar 26 2015 15:46
а как ты делаешь?
ldarikl
@ldarikl
Mar 26 2015 15:47
Добавил в модель траит и $article->created_at->diffForHumans()
Alexander Popov
@ruelephant
Mar 26 2015 15:49
а created_at какой формат имеет?
ldarikl
@ldarikl
Mar 26 2015 15:49
вот такой 2015-03-26 10:39:57
это поле создано с помощь миграций, $table->timestamps();
Alexander Popov
@ruelephant
Mar 26 2015 15:56
@ldarikl а ты точно хорошо его проинсталил?
он ищет фразу "localized-carbon::units.hour" в стандартном файле локализации
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 15:58
не в стандартном жеж
в неймспейсе localized-carbon
Alexander Popov
@ruelephant
Mar 26 2015 15:59
ну я и спросил
ldarikl
@ldarikl
Mar 26 2015 15:59
добавил строчку в composer.json -> composer update
Alexander Popov
@ruelephant
Mar 26 2015 15:59
может там надо публикацию сделать?
ldarikl
@ldarikl
Mar 26 2015 16:00
сейчас сделаю публикацию, может поможет
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:00
Хм
там нет ассетов
только папочка lang
Alexander Popov
@ruelephant
Mar 26 2015 16:00
ну значит не может проиклюдить
ldarikl
@ldarikl
Mar 26 2015 16:01
сделал vendor:publish не помогло
Alexander Popov
@ruelephant
Mar 26 2015 16:02
у меня нет пакета
но проблема в том что он не может дотянуться до файла локализации
@ldarikl как пакет называется?
ldarikl
@ldarikl
Mar 26 2015 16:03
при установке была ошибка ругался на эту строчку в сервис провайдере $this->package('laravelrus/localized-carbon'); я её закоментировал
Alexander Popov
@ruelephant
Mar 26 2015 16:03
@ldarikl ты провайдер добавил и алиасы?
ldarikl
@ldarikl
Mar 26 2015 16:03
lf
да
Роман Сохарев
@greabock
Mar 26 2015 16:04
пляяя...
мужик
там русским английским языком написано
Alexander Popov
@ruelephant
Mar 26 2015 16:05
а ниже примечание читал?
Роман Сохарев
@greabock
Mar 26 2015 16:05
для пятерки юзать dev-master
Alexander Popov
@ruelephant
Mar 26 2015 16:05
@greabock а у него не 5-рка вроде бы
или нет?
Роман Сохарев
@greabock
Mar 26 2015 16:05
$this->package('laravelrus/localized-carbon') Эту строчку для пятерки я своими руками удалял
LaravelRUS/localized-carbon@157724c
Alexander Popov
@ruelephant
Mar 26 2015 16:06
эти руки, руки трудовыыыые
ругалось немного на другую строчку
Роман Сохарев
@greabock
Mar 26 2015 16:10
что ты мне тут демонстрируешь? ))
ты лучше composer.json свой продемонстрируй ))
ldarikl
@ldarikl
Mar 26 2015 16:11
спасибо за демонстрацию помогло =)
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:11
а что демонстрировать, там 1.*
вангую
Роман Сохарев
@greabock
Mar 26 2015 16:11
@SerafimArts )))
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:12
ну или *, но composer update 100 лет назад
вы лучше оцените какую я фишку в миграциях надыбал
Роман Сохарев
@greabock
Mar 26 2015 16:13
м?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:13
Роман Сохарев
@greabock
Mar 26 2015 16:14
пока что это беспочвенное утверждение )))
давай ссылку на код, который анализирует ))
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:14
ща
Alexander Popov
@ruelephant
Mar 26 2015 16:17
это ошибка в ядре
флаги --create игнирируются
он всегда как бы выставлен
ldarikl
@ldarikl
Mar 26 2015 16:17
@greabock спасибо проблема была в этой строке в composer.json "laravelrus/localized-carbon": "1.*"
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:17
мне надо некоторое время, т.к. надо прочитать код
ибо я на практике с этим столкнулся
ldarikl
@ldarikl
Mar 26 2015 16:18
просто с композером ещё не на ты
Alexander Popov
@ruelephant
Mar 26 2015 16:18
@SerafimArts там просто ошибка
он всегда создает миграции с пересозданием
имя он не парсит
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:18
я переименовал файл и всё заработало
ыч
оказывается это не анализ
Роман Сохарев
@greabock
Mar 26 2015 16:20
@SerafimArts если ты всетаки найдешь этому подтверждение, то можно будет открыто заявлять, что тейлор был бухой, когда придумал такое поведение
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:20
там два класса с одинаковым именем были
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:21
а когда миграций овер 50+ - довольно проблематично было не ошибиться
короче
это я бухой
а не Тейлор
был
Роман Сохарев
@greabock
Mar 26 2015 16:21
))
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:22
уже была миграция с таким именем
как следствие - классом
и автолоад подхватывал самую первую
Alexander Popov
@ruelephant
Mar 26 2015 16:22
жители велорибо все еще пьют фейри, а жители велобаджо уже под столом
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:23
блин
но всё равно это косяк в ядре
Роман Сохарев
@greabock
Mar 26 2015 16:23
@ruelephant я только сейчас осознал, каким старым нужно быть, чтобы понимать эту шутку
Alexander Popov
@ruelephant
Mar 26 2015 16:24
дада
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:24
для 2015_03_26_create_some_any.php надо создавать класс
class CreateSomeAny20150326
Alexander Popov
@ruelephant
Mar 26 2015 16:24
школоте не понять :)
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:25
простите
http://cs623721.vk.me/v623721981/1338e/QLEuIro4hKo.jpg
не мог не запостить =)
так и живём...
Alexander Popov
@ruelephant
Mar 26 2015 16:26
да такая жизнь
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:26
блин, надо теперь запомнить и перед тем, как создавать миграцию - надо смотреть все овер 50+ файлов на предмет совпадения имён
Роман Сохарев
@greabock
Mar 26 2015 16:27
беда
Alexander Popov
@ruelephant
Mar 26 2015 16:27
а как так получилось что имена совпали?
они в разных папках лежат чтоли?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:27
нет
даты разные
же
а имена классов одинаковые
Роман Сохарев
@greabock
Mar 26 2015 16:27
миграции с датами же идут
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:27
имена файлов
но не классов
да
Alexander Popov
@ruelephant
Mar 26 2015 16:27
классная задумка
имена разные, а классы одинаковые
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:28
по этому автолоад захавал самый первый попавшийся класс с таким именем
он действительно создавал таблицу
Alexander Popov
@ruelephant
Mar 26 2015 16:28
ну я считаю это дробовик потенциальный
которые стрелят в ногу
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:29
а второй, точно такой же - создавал новую и выносил ключики в отдельную. Т.е. менял связь из one2one в many2many
Роман Сохарев
@greabock
Mar 26 2015 16:29
нужно просто запретить артизану хреначить классы с одинаковым именем
Alexander Popov
@ruelephant
Mar 26 2015 16:29
так оно же идет по датам
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:29
и что?
Alexander Popov
@ruelephant
Mar 26 2015 16:30
если я правильно понимаю, интеграции могут идти одна за другой
на одну и ту-же таблицу
как патчи
Роман Сохарев
@greabock
Mar 26 2015 16:31
ну а так как файлы не по psr оформлены, то и ide на них не ругается...
Alexander Popov
@ruelephant
Mar 26 2015 16:32
ну а как ты хочешь?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:32
я уже назвал выше
*привёл в пример
Alexander Popov
@ruelephant
Mar 26 2015 16:33
я как понял при накатывании интеграции тест он вызывает все файлы за дату по порядку
если так обозвать классы, то ему нельзя будет оперировать названием тест уже
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:34
create migrate:test вызвать два раза - создадутся два файла миграций с одинаковыми именами классов
Alexander Popov
@ruelephant
Mar 26 2015 16:35
правильно
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:35
при этом вылетит ошибка
а если создать один файл, провести её, потом создать ещё одну такую же и выполнить - всё будет ок
но как только вызвать rollback - будет вызываться всегда первая
хотя подразумевается откат второй, а потом первой
Alexander Popov
@ruelephant
Mar 26 2015 16:37
пример в студию
с именами
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:37
сам проверь
создай миграцию test
потом проведи её
Потом опять создай
и опять проведи
всё будет ок
после попробуй откатиться
ака rollback
всегда будет вызываться метод down из первой
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:47
после того, как ты поймёшь, что это действительно так - предлагаю попробовать создать миграцию, вида:
Schema::table('some', function(Blueprint $t){
  $t->integer('any2');
  $t->dropColumn('any');
});
на этот раз выстрелив себе в ногу второй раз
и вершиной забагованности будет такой код:
Schema::table('some', function(Blueprint $t){
  $t->dropColumn('any2');
  $t->dropColumn('any');
});
на миграциях такого вида можно не только отстрелить себе обе ноги, но и прострелить голову, на вылет
а всё остальное тело можно полностью изнечтожить, просто забыв обернуть код миграций в транзакцию. Надо молиться, чтоб такая миграция на проде прошла успешно.
Alexander Popov
@ruelephant
Mar 26 2015 16:53
кстати вопрос
а кто как сделал отключение на продакшене всяких дебаг панелей и пр?
они же не должны там быть
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:54
ну на проде их и нет
Alexander Popov
@ruelephant
Mar 26 2015 16:54
я исправил
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:54
зачем?
оно тормозит систему же
Alexander Popov
@ruelephant
Mar 26 2015 16:54
вот и вопрос
как отключить их только на проде
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:54
они на проде по-умолчанию отключены
если ты про артек и барривдх панели
Alexander Popov
@ruelephant
Mar 26 2015 16:55
всмысле по умолчанию?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:55
да
в конфигах же прописано
сделай config:publish
получишь конфиги
Alexander Popov
@ruelephant
Mar 26 2015 16:56
я про то что даже сервис провайдеры подключить их не надо
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:57
надо
если ты используешь дефолтные
Alexander Popov
@ruelephant
Mar 26 2015 16:58
какие блин дефолтные?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:58
дефолтные == по-умолчанию для лары
не дефолтные == от симфони или ещё какие
Alexander Popov
@ruelephant
Mar 26 2015 16:58
а где я говорил что я хочу отключить дефолтные?
я хочу отключить 'Clockwork\Support\Laravel\ClockworkServiceProvider',
'Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider',
'mathiasgrimm\laraveldotenvgen\ServiceProvider',
'Jenssegers\Raven\RavenServiceProvider',
для продакшен окружения
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 16:59
ну добавляй их только в локале
для чего тебе конфиги
?
app/config/local/app.php
=>
'providers' => [
  Clockwork\Support\Laravel\ClockworkServiceProvider::class,
  Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class,
  ....
]
или у тебя 5ка?
Alexander Popov
@ruelephant
Mar 26 2015 17:01
5 конечно
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:01
почему конечно?
я хз как в 5ке
Annywebart
@Annywebart
Mar 26 2015 17:03

Привет всем!
Подскажите, пожалуйста. Составляю запрос для выбора страницы по алиасу, но только в том случае, если поле parent_id у родителя равно 0. Получилось вот так:

$page = Page::whereAlias($alias)
            ->with(array('parent' => function($query)
            {
                $query->where('parent_id', '=', 0);

            }))
            ->firstOrFail();

Но не работает :(

Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:04
а запрос какой оно делает?
sql
dd(DB:getQueryLog()); если не путаю
Annywebart
@Annywebart
Mar 26 2015 17:08
select * from `pages` where `alias` = ? limit 1
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:08
Ну вот видишь
with вообще не работает
скорее всего там нужен where
хотя не должно быть
with жадно забирает
public function parent() == $this->belongsTo(static::class, 'parent_id', 'id');?
Annywebart
@Annywebart
Mar 26 2015 17:12
да
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:12
хм
о, а попробуй поменять местами with и where
Annywebart
@Annywebart
Mar 26 2015 17:13
попробовала whereHas, получился вот такой запрос
select * from `pages` where `alias` = ? and (select count(*) from `pages` where `pages`.`parent_id` = `pages`.`id` and `parent_id` = ?) >= 1 limit 1
если меняю местами, получается select * from `pages` where `alias` = ? limit 1
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:14
да, глупо было предположить, что билдер не имеет ссылку на модель
ну получается whereHas использовать, хорошо что ты догадалась сама =)
Alexander Popov
@ruelephant
Mar 26 2015 17:16
еще одна девушка?
Annywebart
@Annywebart
Mar 26 2015 17:18
Но дело в том, что в таком случае результат все равно неправильный. Страница не выбирается и в том случае, когда условие должно выполниться...
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:19
должна, судя по запросу
сек
вечер, туплю =)
ааа
ну так правильно всё
SELECT * FROM pages AS p WHERE p.alias = ? AND (SELECT COUNT(*) FROM pages AS c WEHRE p.parent_id = c.id AND c.parent_id = ?) >= 1 LIMIT 1
это если ручками
надо теперь понять как через билдер это сварганить
Annywebart
@Annywebart
Mar 26 2015 17:22
ага :)
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:22
проблема вот в этой строке:
`pages`.`parent_id` = `pages`.`id`"
Alexander Popov
@ruelephant
Mar 26 2015 17:22
шо тут?
кто не спит?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:22
Оно ищет страницу, у которой совпадает parent_id и id
а не страницу, у которой id находится во внешней выборке
Alexander Popov
@ruelephant
Mar 26 2015 17:23
и?
Annywebart
@Annywebart
Mar 26 2015 17:24
я, вроде, понимаю,
но как бы это записать?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:24
что "и"?
ну надо кастовать профи
я вообще новичок
Annywebart
@Annywebart
Mar 26 2015 17:25
я в Laravel тоже
Alexander Popov
@ruelephant
Mar 26 2015 17:26
User::whereRaw('id = parent_id')->get()
не?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:26
не
Alexander Popov
@ruelephant
Mar 26 2015 17:26
почему нет?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:27
нужна не страница, где id = parent_id
LaravelButler

Приветствуем Вас, @amrigo, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Alexander Popov
@ruelephant
Mar 26 2015 17:27
эм
а какая?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:28
а страница-1, где у страницы-2 с id, равным страница-1.parent_id
и только те, у которых страница-2.parent_id = 0
я запрос написал выше
Alexander Popov
@ruelephant
Mar 26 2015 17:31
ну тебе надо join сам в себя сделать
связь один к одному
в модели сделай метод
public function toSelf() {
    return $this->hasOne('App\Имя', 'parent_id', 'id')->where('parent_id', '=', 'VALUE');
}
как то так
@SerafimArts
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:34
?
шо?
Annywebart
@Annywebart
Mar 26 2015 17:34
так а зачем?
есть связь уже
public function parent()
    {
        return $this->belongsTo('Page', 'parent_id');
    }
проблема ж с алиасами таблиц, как я поняла
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:35
+1
Alexander Popov
@ruelephant
Mar 26 2015 17:35
@Annywebart так что пишет?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:36
она уже написала
выше
рукалицо
Alexander Popov
@ruelephant
Mar 26 2015 17:38
дайте блин полный код и дамп базы
пример
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:38
ппц
код тоже был выше
ты вообще читать не умеешь?
Alexander Popov
@ruelephant
Mar 26 2015 17:39
умею, я прошу полный
что бы у себя проверить
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:39
вот код: :point_up: 26 марта 2015 г., 20:03
а что проверять?
что тебе надо?
всю уже проверено
надо только добавить алиасы на таблицы
Annywebart
@Annywebart
Mar 26 2015 17:40
@SerafimArts спасибо :)
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:40
за что? о_0
Alexander Popov
@ruelephant
Mar 26 2015 17:41
я сейчас матерится начну
Annywebart
@Annywebart
Mar 26 2015 17:41
что избавил меня от объяснений
Alexander Popov
@ruelephant
Mar 26 2015 17:41
"нам блин только спросить"
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:41
а, ну не за что
человек просто читать не умеет =)
Alexander Popov
@ruelephant
Mar 26 2015 17:41
"в общем схема работает, но тут надо поправить"
"но мы вам полный код не дадим, у вас документов нет"
!!!!!
Annywebart
@Annywebart
Mar 26 2015 17:42
@ruelephant ну, чё непонятного? :)
Alexander Popov
@ruelephant
Mar 26 2015 17:42
дай А) контролер (пример) Б) модель
и дамп таблицы (структура)
в архиве желательно
Annywebart
@Annywebart
Mar 26 2015 17:42
щас
Alexander Popov
@ruelephant
Mar 26 2015 17:42
p.s. у тебя 5 лара?
Annywebart
@Annywebart
Mar 26 2015 17:43
4-я
Alexander Popov
@ruelephant
Mar 26 2015 17:43
чорд
мне может быть лениво
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:43
в теории можно воспользоваться http://stackoverflow.com/questions/17747562/php-laravel-4-database-table-as
Alexander Popov
@ruelephant
Mar 26 2015 17:43
у меня 5рка только тут
погоди тогда делать :)
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:43
т.е. не сквозь модели вызывать, а сквозь DB
оооо!
там есть protected $table
ща
Page::setTable('pages AS p')->where....
и по аналогии остальное
в теории может сработать
Annywebart
@Annywebart
Mar 26 2015 17:45
о, спасибо! сейчас попробую
Alexander Popov
@ruelephant
Mar 26 2015 17:47
я пишу и плачу :(
что вы делаете?
Annywebart
@Annywebart
Mar 26 2015 17:47
говорит
Non-static method Illuminate\Database\Eloquent\Model::setTable() should not be called statically, assuming $this from incompatible context
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:48
ну да
блин
Vitaliy Stepanenko
@Nayjest
Mar 26 2015 17:48
@Annywebart (new Page)->setTable('pages AS p')->newQuery()->
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:48
+1
тоже самое хотел написать
Alexey
@Butochnikov
Mar 26 2015 17:49
кто в композере понимает? почему не проходит установка?
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for laracasts/integrated 0.11.2 -> satisfiable by laracasts/integrated[0.11.2].
    - Conclusion: remove symfony/dom-crawler v2.5.10
    - laracasts/integrated 0.11.2 requires symfony/dom-crawler ~2.6 -> satisfiable by symfony/dom-crawler[v2.6.0, v2.6.1, v2.6.2, v2.6.3, v2.6.4, v2.6.5].
    - Can only install one of: symfony/dom-crawler[v2.6.0, v2.5.10].
    - Can only install one of: symfony/dom-crawler[v2.6.1, v2.5.10].
    - Can only install one of: symfony/dom-crawler[v2.6.2, v2.5.10].
    - Can only install one of: symfony/dom-crawler[v2.6.3, v2.5.10].
    - Can only install one of: symfony/dom-crawler[v2.6.4, v2.5.10].
    - Can only install one of: symfony/dom-crawler[v2.6.5, v2.5.10].
    - Installation request for symfony/dom-crawler == 2.5.10.0 -> satisfiable by symfony/dom-crawler[v2.5.10].
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:50
у тебя где-то прописан dom-crawler 2.5
Alexey
@Butochnikov
Mar 26 2015 17:50
для 4 лары спец запулил laracasts/Integrated@e22ed65
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:50
а этот пакет требует ~2.6
Alexey
@Butochnikov
Mar 26 2015 17:50
все одно не проходит
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:51
хм
Alexey
@Butochnikov
Mar 26 2015 17:51
вот вот
какие идеи?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:52
This message was deleted
предлагаю убить спеца
и просто require laracasts/integrated 0.11.0
или 0.11.1
в какой там нет этой строчки
с краулером 2.5
Alexander Popov
@ruelephant
Mar 26 2015 17:53
господи народ вам не стыдно?
у нас тут не получается, давайте тут костылем решим
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:54
это же лара
Alexander Popov
@ruelephant
Mar 26 2015 17:54
или вы не видите что решение выходит за рамки архитектуры?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:54
костыли и велосипеды наше всё!
Alexander Popov
@ruelephant
Mar 26 2015 17:54
это не оправдание
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:55
оправдание чего?
Alexey
@Butochnikov
Mar 26 2015 17:55
а композер может удалять пакеты в зависимостях командой?
Alexander Popov
@ruelephant
Mar 26 2015 17:55
пишите на фрейворке, пишите по линии создателя иначе отгребете
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:55

а композер может удалять пакеты в зависимостях командой?

а хз

Alexander Popov
@ruelephant
Mar 26 2015 17:55
я не понял вопрос
Annywebart
@Annywebart
Mar 26 2015 17:56

@Nayjest спасибо за подсказку. А как это правильно записать?
Пробую

(new Page)->setTable('pages AS p')->newQuery()->whereAlias($alias)->firstOrFail();

Ошибка

Call to a member function newQuery() on a non-object
Alexander Popov
@ruelephant
Mar 26 2015 17:56
composer remove не катит?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:56
@Annywebart ну посмотрела бы что за метод setTable ;)
Alexey
@Butochnikov
Mar 26 2015 17:57
@ruelephant нет не катит, этого пакета не в composer.json
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 17:57
$page = new Page;
$page->setTable('pages as P');
$page->.....->....->....
Orel
@2byte
Mar 26 2015 17:59
.cc {
    display: inline-block;
    margin-left:auto;
    margin-right:auto;
}
Не выравнивает по центру, только при фиксированной ширине, почему?
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:00
Потому что margin auto применяется только к элементам с шириной
я Кэп
как вариант - можно сделать right: 0; + left: 0; + position: absolute;
хотя
а нафига
у родителя сделай text-align: center;
Orel
@2byte
Mar 26 2015 18:02
Не, абсолют страшен
@SerafimArts так выравнивается текст
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:03
оно же inline-block
inline-**** и есть блоковая модель текста
точнее не блоковая, а поточная
Orel
@2byte
Mar 26 2015 18:04
Выравнял кнопку)) Хотя вроде раньше не мог
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:04
=)
Orel
@2byte
Mar 26 2015 18:05
@SerafimArts в новых версиях align-content должен решить все муки людей
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:06
ага, когда ИЕ начнёт понимать флексы
нормально
Annywebart
@Annywebart
Mar 26 2015 18:06

@SerafimArts Спасибо, но все равно не получается.

$page = new Page;
        $page->setTable('pages AS p');
        $page = $page->where('p.alias', '=', $alias)
            ->whereHas('parent', function($query)
            {
                $query->where('parent_id', '=', 0);
            })
            ->first();

Ошибка

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'as `p.parent_id` = `pages`.`id` and `parent_id` = ?) >= 1 limit 1' at line 1 (SQL: select * from `pages` as `p` where `p`.`alias` = vaz-2108-vaz-2109-vaz-2110-vaz-1117-vaz-2170 and (select count(*) from `pages` where `pages` as `p.parent_id` = `pages`.`id` and `parent_id` = 0) >= 1 limit 1)
Orel
@2byte
Mar 26 2015 18:07
Но вот бт хелпер выравнивающий по центру, просто убивает, где интересно они его применяли
.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
@SerafimArts Да вроде ie 11 поддерживает его
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:08
@Annywebart предлагаю перед вызовом first проверить какой sql оно собирается вызывать
@2byte "бт"?
Orel
@2byte
Mar 26 2015 18:08
@SerafimArts bootstrap
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:09
+1
Orel
@2byte
Mar 26 2015 18:11
@SerafimArts Все обновления css, js выходят с новыми версиями браузеров ? А у хрома после обновления? Бамс и хром уже поддерживает все новшества
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:13
нет
Annywebart
@Annywebart
Mar 26 2015 18:13
@SerafimArts select * from `pages` as `p` where `p`.`alias` = ? and (select count(*) from `pages` where `pages` as `p.parent_id` = `pages`.`id` and `parent_id` = ?) >= 1
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:14
у тебя нет алиаса во внутреннем запросе =(
Annywebart
@Annywebart
Mar 26 2015 18:14
вижу :(
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:14
хотя мне ещё кажется странной запись `p`.`alias`
и `p.parent_id`
т.е. они разные
может быть где-то в них тоже ошибка
@2byte всё наоборот. Стандарт в виде драфта выходит, потом через годик над ним задумываются, потом лет через 5 - более или менее его начинают воспринимать все
потом появляется стандарт (т.е. релиз)
и года через 2 одупляется ИЕ
и уже через пару лет, после того, как одупляется ИЕ - можно начать его использовать +)
например HTML5 начал появляться в 2004ом году +-
стандарт был принят в октябре прошлого года
а ИЕ (Спартан который) до сих пор в html5test набирает 300 баллов из 500
Orel
@2byte
Mar 26 2015 18:20
@SerafimArts пока ие одупляется, выходят новые плюшки, которые он еще сколько-то лет еще будет одуплять
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:20
ну блинк, например, уже поддерживает кусок из спецификации CSS4
то что тут написано: http://caniuse.com/#feat=pointer - враки
Orel
@2byte
Mar 26 2015 18:21
Почему бы всем не перейти на хром)
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:22
я не использую хром
=)
у меня яндекс
тупо потому, что могу в скупе ткнуть разработчиков и пожаловаться, без ожидания ответа на письмо с фидбеком :D
Orel
@2byte
Mar 26 2015 18:23
Ну фиг с ним, главное вебкит
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:24
нет
вебкит в сафари
=)
только
Orel
@2byte
Mar 26 2015 18:25
@SerafimArts как так
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:25
а если ты считаешь, что Blink и WebKit одно и тоже, то Webkit надо считать Khtml
вот так
Trident - IE, EdgeHTML - IE12+
Gecko - FF
WebKit - Safari
Blink - Yandex, Maxthon 3+ (Trident - Maxthon, Trident + Webkit - Maxthon 2), Chromium, Opera 13+
Khtml - Konquerorr
вообще на блинке больше браузеров, но я не стал считать всякие Chrome, Internet, Iron и прочее, т.к. это тупо клоны хромиума со своими встроенными сервисами для тыренья пользовательских данных
Orel
@2byte
Mar 26 2015 18:33

@SerafimArts только щас из вики узнал)

В апреле 2013 года Google и Opera Software заявила о переходе на движок Blink.

Это так просто, они взяли и перешли )))
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 18:34
да
учитывая то, что это просто форк вебкита
Orel
@2byte
Mar 26 2015 18:37
This message was deleted
Alexey
@Butochnikov
Mar 26 2015 18:50
короче удалил я вручную пакеты, но все равно не устанавливает
хз что делать
Alexander Popov
@ruelephant
Mar 26 2015 19:18
так что у тебя там?
LaravelButler

Приветствуем Вас, @skalinets, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Alexey
@Butochnikov
Mar 26 2015 19:27
как вообще на 4,2 поставить dom-crawler 2.6, если он требует только 2.5 ?
Alexander Popov
@ruelephant
Mar 26 2015 19:29
тупые вы, уйду на java :(
*в сердцах*
Alexey
@Butochnikov
Mar 26 2015 19:32
"умный" подскажи тогда, или иди на java
Alexander Popov
@ruelephant
Mar 26 2015 19:32
так в чем проблема то еще раз?
Alexey
@Butochnikov
Mar 26 2015 19:34
у 4.2 в зависимостях symfony/dom-crawler 2.5, мне надо обновить до 2.6. композер обновлять не хочет
Alexander Popov
@ruelephant
Mar 26 2015 19:34
lock файл?
@Butochnikov дай суда composer.json
Alexey
@Butochnikov
Mar 26 2015 19:36
чистая l4.2
Alexander Popov
@ruelephant
Mar 26 2015 19:36
у меня 5-рка
дай composer.json
вернее секцию "require":
Alexey
@Butochnikov
Mar 26 2015 19:37
ха
"require": {
        "laravel/framework": "4.2.*"
    },
для фрейма вот
"require": {
        "php": ">=5.4.0",
        "classpreloader/classpreloader": "~1.0.2",
        "d11wtq/boris": "~1.0",
        "ircmaxell/password-compat": "~1.0",
        "filp/whoops": "1.1.*",
        "jeremeamia/superclosure": "~1.0.1",
        "monolog/monolog": "~1.6",
        "nesbot/carbon": "~1.0",
        "patchwork/utf8": "~1.1",
        "phpseclib/phpseclib": "0.3.*",
        "predis/predis": "0.8.*",
        "stack/builder": "~1.0",
        "swiftmailer/swiftmailer": "~5.1",
        "symfony/browser-kit": "2.5.*",
        "symfony/console": "2.5.*",
        "symfony/css-selector": "2.5.*",
        "symfony/debug": "2.5.*",
        "symfony/dom-crawler": "2.5.*",
        "symfony/finder": "2.5.*",
        "symfony/http-foundation": "2.5.*",
        "symfony/http-kernel": "2.5.*",
        "symfony/process": "2.5.*",
        "symfony/routing": "2.5.*",
        "symfony/security-core": "2.5.*",
        "symfony/translation": "2.5.*"
    },
что это тебе дает?
то что там жестко версия прописана это и так ясно
Alexander Popov
@ruelephant
Mar 26 2015 19:40
попробуй вписать "symfony/dom-crawler": "2.*", именно в корневой composer
и composer update
Alexey
@Butochnikov
Mar 26 2015 19:42
при такой строчке Nothing to install or update
очень интересно почему я не могу сделать это composer require symfony/dom-crawler 2.6
Alexander Popov
@ruelephant
Mar 26 2015 19:43
а что пишет то?
Alexey
@Butochnikov
Mar 26 2015 19:44
Problem 1
    - laravel/framework v4.2.17 requires symfony/dom-crawler 2.5.* -> no matching package found.
    - laravel/framework v4.2.17 requires symfony/dom-crawler 2.5.* -> no matching package found.
    - Installation request for laravel/framework == 4.2.17.0 -> satisfiable by laravel/framework[v4.2.17].

Potential causes:
 - A typo in the package name
 - The package is not available in a stable-enough version according to your minimum-stability setting
   see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> for more details.

Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.
Alexey
@Butochnikov
Mar 26 2015 19:53
т.е. получается, что я не могу ставить на лару версии пакетов выше, чем она просит? как-то это не правильно
Alexander Popov
@ruelephant
Mar 26 2015 19:53
ну есть такая проблема
просто все зависимости лары, кладуются в общую кучу
SergeyMiracle
@SergeyMiracle
Mar 26 2015 19:57
Ребятки подскажите, чет не могу понять есть ли возможность запускать migrate на конкретный файл миграции?
Alexey
@Butochnikov
Mar 26 2015 19:59
закинь его в отдельную папку и php artisan migrate --path=app/foo/migrations
SergeyMiracle
@SergeyMiracle
Mar 26 2015 20:00
как вариант
Alexey
@Butochnikov
Mar 26 2015 20:02
а других и нет )
LaravelButler

Приветствуем Вас, @writepavel, в нашем дружном чате
В чате запрещена: реклама, спам, нецензурная лексика. Чат не место для оскорблений и выяснения отношений между участниками. За нарушение – Бан!

Русскоязычное сообщество Laravel
Самая свежая документация по Laravel 5
Документация по Laravel 4.2
Официальный сайт Laravel
Группа Вконтакте
А так же:
G+, Facebook, Twitter, GitHub

⇒ Перед тем как написать сообщение, пожалуйста, ознакомьтесь с разметкой Markdown ( Ctrl+Shift+M (Windows) Ctrl+Alt+M (Linux) Ctrl+Cmd+M (Mac) )

Azamat
@azamat-sharapov
Mar 26 2015 21:23
при старте запроса, где Session начинает работать? у меня в данный момент из сессии берутся кое какие данные и через View::share() используется во views. Это у меня в конструкторе Controller срабатывает. Но проблема, если я страницу загружаю прям с routes.php, не загружая контроллер.
в провайдеры я так понял не могу это ставить, потому что там Session не доступен
expiritus
@expiritus
Mar 26 2015 21:33
Доброго времени всем суток. Подскажите кто знает как в laravel вывести дерево категорий. Есть таблица с id, category, parent_category. Не получается вывести на страницу ввиде древовидного меню
Andrey
@Quiss
Mar 26 2015 22:29
Ребят кто-нить знает отличный markdown editor для лары уже готовый? =)
желательно ы Live Preview
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 22:29
что значит для лары?
Andrey
@Quiss
Mar 26 2015 22:29
то и значит ) готовый пакет
поставил и завелось
подключи Partial и все %)
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 22:30
ппц разленились
Andrey
@Quiss
Mar 26 2015 22:30
тип такого знаешь шонить?
можно и не для лары %)
Andrey
@Quiss
Mar 26 2015 22:30
@SerafimArts не разленились, а оптимизируем время )
@SerafimArts а лайв превью подскажешь какой-нибудь? =)
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 22:31
PhpStorm
IDEA тоже сойдёт
Andrey
@Quiss
Mar 26 2015 22:32
не стоп, мне надо как http://jbt.github.io/markdown-editor/
expiritus
@expiritus
Mar 26 2015 22:32
Доброго времени всем суток. Подскажите кто знает как в laravel вывести дерево категорий. Есть таблица с id, category, parent_category. Не получается вывести на страницу ввиде древовидного меню
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 22:32
ну сделай
Andrey
@Quiss
Mar 26 2015 22:32
ну вдруг есть что-то готовое :) ладно спасибо
Kirill Nesmeyanov
@SerafimArts
Mar 26 2015 22:32
стой
ща в личку в вк кину
Andrey
@Quiss
Mar 26 2015 22:33
ок)
я тебе тоже приглашение кину
с @vanchelo сервис мутим %)
expiritus
@expiritus
Mar 26 2015 22:33
Кто знает как вывести дерево во вьюху?
JhaoDa
@jhaoda
Mar 26 2015 23:53
Как хорошо, что я не заходил сутки... а то бы не сдержался
И опять бы поклонники начали ныть «малчи если тибе не чива сказать»