These are chat archives for LaravelRUS/chat

27th
Aug 2015
projct1
@projct1
Aug 27 2015 05:20
для полиморфных таблиц, куда ссылается много сущностей, лучше MyIsam использовать движок?
Paul Klementyev
@klermonte
Aug 27 2015 05:29
Ага, помогли вы ему:D он ж сегодня опять припрется с вопросом "а как мне вывести второй repair" а "как сохранить старые данныеь" и тд
projct1
@projct1
Aug 27 2015 05:41
разобрался как покрасивей апдейтить рилейшен с учётом fillable:
            $content = $model->content();
            $content->update($this->request->only($content->getRelated()->getFillable()));
Qweqwe1234
@Qweqwe1234
Aug 27 2015 06:33
Утра доброго, подскажите в Laravel есть какой-нибудь метод для удаления связанных данных? То есть если я удаляю статью то вместе с ней удалились бы и все ее комменты? с другой стороны если это возможно, то как удалить не все связанные данные, к примеру при удалении пользователя не удалять его статьи но удалить все его комментарии?
Qweqwe1234
@Qweqwe1234
Aug 27 2015 06:38
Хотя, можно же написать $user->comments()->delete(); $user->delete(); и радоваться жизни. Только как-нибудь в других связанных данных сменить бы все id хозяина на другую, к примеру на пользователя anonymous с id 1, или как лучше бороться с битыми связями после удаления?
censoredgit
@censoredgit
Aug 27 2015 06:40
Бд это умеет. Читай про внешние ключи
Screamster
@Screamster
Aug 27 2015 06:41
@Qweqwe1234 мне помогла эта статья https://gist.github.com/greabock/3d1611c1125f5340f491
Qweqwe1234
@Qweqwe1234
Aug 27 2015 06:42
Но лара как я понял не связывает данные на уровне бд, а все делает сама и по сути когда мы пишем $user->comments() он делает Comment::where('user_id', '=', $user->id);
@Screamster спасибо, сейчас посмотрю
Screamster
@Screamster
Aug 27 2015 06:43
@Qweqwe1234 и вот продолжение про удаления и т.д. https://gist.github.com/greabock/e63da9e3d1b26e6cd7a3
Qweqwe1234
@Qweqwe1234
Aug 27 2015 06:44
@Screamster спасибо
User195
@User195
Aug 27 2015 06:51
пытаюсь развернуть приложение на сервер, почитал, в статьях говорится что нужно скопировать все своё приложение на сервер, но ведь если копировать всё приложение то скопируются некоторые ненужные/вспомогательные файлы. Как скопировать только то что нужно?
User195
@User195
Aug 27 2015 06:57
или на удалённом сервере нужно установить чистый laravel, а затем обновить папку app и public ?
Qweqwe1234
@Qweqwe1234
Aug 27 2015 07:00
@User195 а как же папка с шаблонами? Пока не занимался таким, но самое тяжелое это папка vendor которая легко подтягивается composer update а остальное думаю можно и так закинуть. Или посмотреть файлы .gitignore. Хотя это лично мое мнение
User195
@User195
Aug 27 2015 07:03
@Qweqwe1234 то есть надо по ssh гитом закидывашь на сервер? А если есть возможность только по ftp
Qweqwe1234
@Qweqwe1234
Aug 27 2015 07:04

@Screamster Статьи действительно замечательные, но заинтересовало из доки

$table->foreign('user_id')
      ->references('id')->on('users')
      ->onDelete('cascade');

А где все возможности работы с таблицами можно почитать?

@User195 я думаю можно просто скопировать, в файлах .gitignore указываются файлы и папки которые содержат кеш и прочее, то есть по ним можно определиться что действительно лишнее
хотя файл .env нужен
Screamster
@Screamster
Aug 27 2015 07:12
@Qweqwe1234 ну в документации лары, в коде лары + в документации по апи.
Qweqwe1234
@Qweqwe1234
Aug 27 2015 07:17
@Screamster в документации лишь обрывки нашел, к примеру упоминается про onUpdate но нисказано ничего о нем, так же references вроде нигде не описано, хотя возможно плохо искал
хотя нет про references еще все более менее понятно
но стоит ли использовать?
Сергей
@egent
Aug 27 2015 07:46
@Qweqwe1234 нужно сначала почитать что такое внешние ключи например тут http://denis.in.ua/foreign-keys-in-mysql.htm потом поймешь где и зачем их использовать
Maxim
@Big-Shark
Aug 27 2015 07:48
Вопрос, кто как создает новые пакеты на гитхабе? чтоб редми там было, тесты, и тд? Я смог найти всего2 либы по созданию, и 2 или 3 скелета, но все немного не то. Кто чем пользуется из вас?
Qweqwe1234
@Qweqwe1234
Aug 27 2015 07:54
@egent Про внешние ключи знаю, знаю зачем используются и тд, но у лары свой красноречивый язык для работы с бд вот и интересует где же все же почитать про все возможности при создании полей в бд что бы она могла проявить в дальнейшем всю свою красноречивость и красоту, в частности про onDelete('cascade') про который в официальной документации написана пара строк.
хотя бы понять есть ли смысл в общем случаи указывать $table->foreign('user_id')->references('id')->on('users'); учитывая что в доке по связям про это ни сказано ни слова, лишь сказано о необходимости поля под внешний ключ, для которого я все это время использовал обычный беззнаковый инт
Maxim
@Big-Shark
Aug 27 2015 08:02
@Qweqwe1234 а просто апи класса тебе не достаточно?
Сергей
@egent
Aug 27 2015 08:06
@Qweqwe1234 ну допустим есть таблица Users и UsersProfiles - связь один к одному, Если удалить пользователя, то автоматически удалится профиль юзера из БД если есть onDelete('cascade')
JhaoDa
@jhaoda
Aug 27 2015 08:15
Только надо помнить, что в этом случаем при удалении связанных моделей у них не произойдут события deleting/deleted.
projct1
@projct1
Aug 27 2015 08:25
при сабмите формы как проверить изменилось ли значение конкретного поля или нет? нужно для того, чтобы проверять в валидаторе на уникальность только если изменилось значение
JhaoDa
@jhaoda
Aug 27 2015 08:27
@rorc а что, если не проверять на изменённость, то валидатор ругается, что «такое значение уже есть»?
projct1
@projct1
Aug 27 2015 08:27
@jhaoda да
JhaoDa
@jhaoda
Aug 27 2015 08:27
@rorc проверка в базе?
projct1
@projct1
Aug 27 2015 08:27
@jhaoda уникальный индекс стоит
'name' => 'required|unique:table
если апдейчу вылазит ошибка что уже есть такое название
JhaoDa
@jhaoda
Aug 27 2015 08:28
@rorc ты плохо читал доку
projct1
@projct1
Aug 27 2015 08:28
а мне надо чтобы проверялось тока если name изменилось
projct1
@projct1
Aug 27 2015 08:33
@jhaoda ты про Forcing A Unique Rule To Ignore A Given ID: ?
JhaoDa
@jhaoda
Aug 27 2015 08:34
Ага
projct1
@projct1
Aug 27 2015 08:34
@jhaoda а если в момент сохранения кто-нибудь другой уже добавит с таким названием, а я его проигнорю получается и не проверю
JhaoDa
@jhaoda
Aug 27 2015 08:35
@rorc ничо не понял
Чо тебе другой-то?
projct1
@projct1
Aug 27 2015 08:37
@jhaoda ну я редактирую конкретную запись, так? и при сохранении эта айдишка будет игнорироваться валидатором
в этот момент пока я редактирую другой менеджер создаст запись с таким же именем
в итоге получится дубль, либо вылезет ошибка базы что уже поле существует
JhaoDa
@jhaoda
Aug 27 2015 08:37
@rorc и что?
projct1
@projct1
Aug 27 2015 08:38
:facepalm:
Maxim
@Big-Shark
Aug 27 2015 08:38
@rorc чего? как это у тебя так все странно работает?
Ari Kaiy
@arikaiy
Aug 27 2015 08:39
подскажите пакет наподобие sentry для laravel 5
JhaoDa
@jhaoda
Aug 27 2015 08:39
@rorc Ты не понимаешь, как оно работает?
Валидатор не будет проверять на уникальность запись, id которой ты указал
Все остальные — будет.
symbios_zi
@symbiosss
Aug 27 2015 08:41
@Big-Shark ты на работе какой фреймворк юзаешь?
Maxim
@Big-Shark
Aug 27 2015 08:41
@symbiosss симфони1 и симфони2
@symbiosss точней с 1 на 2 переезжаю
JhaoDa
@jhaoda
Aug 27 2015 08:41
@rorc Поэтому если менеджер что-то там создаёт — для него исключений на проверку нет будет
symbios_zi
@symbiosss
Aug 27 2015 08:41
@Big-Shark а че постоянно в yii группе торчишь? )
JhaoDa
@jhaoda
Aug 27 2015 08:42
@rorc И он не сможет создать юзера с уже существующим атрибутом name. Это так сложно?
Maxim
@Big-Shark
Aug 27 2015 08:42
@symbiosss я еще и в групе симфони торчу)
symbios_zi
@symbiosss
Aug 27 2015 08:42
@Big-Shark ну в симфони понятно )
Maxim
@Big-Shark
Aug 27 2015 08:42
@symbiosss и в группе пхп-ua, хотя по украински не говорю)
symbios_zi
@symbiosss
Aug 27 2015 08:42
laravel 5.1 будет поддерживать PHP7? в курсе может кто?
Maxim
@Big-Shark
Aug 27 2015 08:42
@symbiosss ну конкурентов нужно знать в лицо)
@symbiosss там уже вроде как потдерживает
projct1
@projct1
Aug 27 2015 08:43
@jhaoda @jhaoda ок спс
symbios_zi
@symbiosss
Aug 27 2015 08:43
@Big-Shark на хабре полистал статьи. Похоже что производительность повысится в разы у PHP7
@symbiosss да, это уже давно известно) сможет с ххвм соперничать
symbios_zi
@symbiosss
Aug 27 2015 08:44
@Big-Shark ты кстати используешь unit тесты?
JhaoDa
@jhaoda
Aug 27 2015 08:45
@rorc может ты все же начнешь думать сам, а?
projct1
@projct1
Aug 27 2015 08:45
нахера ваще эти тесты нужны, всё и так отлаживается хорошо, любые ошибки сразу ловятся и приложение не работает дальше
symbios_zi
@symbiosss
Aug 27 2015 08:45
вопрос такой меня терзает. На каком этапе пишутся юнит тесты? Вот начал я писать проект с нуля. Когда внедрять юнит тесты?
Maxim
@Big-Shark
Aug 27 2015 08:45
@symbiosss да, начал использовать сейчас
symbios_zi
@symbiosss
Aug 27 2015 08:46
@rorc бывают ошибки которые сложно отловить, так как могут в 99% случаев не проявиться
Maxim
@Big-Shark
Aug 27 2015 08:46
@rorc я раньше тоже так говорил)
JhaoDa
@jhaoda
Aug 27 2015 08:46
@symbiosss если следовать методологии TDD, то сначала пишутся тесты. Они запускаются, и падают, конечно же. После пишется код, что бы тест не падал. И так далее...
Maxim
@Big-Shark
Aug 27 2015 08:46
@symbiosss тебе нужны интеграционные тесты, или юнит?
@symbiosss @jhaoda я вот сейчас как раз маленькую либу по тдд пишу.
symbios_zi
@symbiosss
Aug 27 2015 08:47
мне нужны видимо все. Так как опыта написания их нет, я раньше как @rorc делал. Вот сейчас есть задача интернет магазин с CI переписать с нуля. Вот и думаю как построить этот процесс
@jhaoda ты используешь TDD?
JhaoDa
@jhaoda
Aug 27 2015 08:48
@symbiosss нет
symbios_zi
@symbiosss
Aug 27 2015 08:48
есть еще и BDD
мне больше интересна разработка от требований бизнеса а не юнит тестов
JhaoDa
@jhaoda
Aug 27 2015 08:48
О да, я вообще пишу магазин с нуля
С максимальной несвязанностью
symbios_zi
@symbiosss
Aug 27 2015 08:49
@jhaoda на laravel?
JhaoDa
@jhaoda
Aug 27 2015 08:49
@symbiosss конечно
Я же не отщепенец типа @Big-Shark или Слона :)
Maxim
@Big-Shark
Aug 27 2015 08:50
@symbiosss тут одно другому не мешает, юниты для классов, а бдд для больших логических блоков)
symbios_zi
@symbiosss
Aug 27 2015 08:50
@jhaoda как аттрибуты товаров сделал? EAV? Или полиморфизм?
JhaoDa
@jhaoda
Aug 27 2015 08:50
@symbiosss ещё никак
symbios_zi
@symbiosss
Aug 27 2015 08:53
@Big-Shark что почитать на тему юнит тестов?
Maxim
@Big-Shark
Aug 27 2015 08:53
@symbiosss а вообще не вкурсе, сам вечно гуглю чтото, я пока на базовом уровне)
symbios_zi
@symbiosss
Aug 27 2015 08:55
еще вопрос. Для древ что юзаете? Closure table или Nested Sets? для mysql
Maxim
@Big-Shark
Aug 27 2015 08:55
@symbiosss Closure table или МП
projct1
@projct1
Aug 27 2015 08:55
This message was deleted
symbios_zi
@symbiosss
Aug 27 2015 08:55
@Big-Shark МП?
@rorc да
Maxim
@Big-Shark
Aug 27 2015 08:56
@symbiosss матереализен паф
Nested Sets мне не нравится
projct1
@projct1
Aug 27 2015 08:56
@symbiosss какой
@symbiosss надеюсь ты не URL::previous() имеешь в виду?
symbios_zi
@symbiosss
Aug 27 2015 08:57
@rorc return redirect()->back();
projct1
@projct1
Aug 27 2015 08:57
@symbiosss мне не редирект нужен, а чтобы ссылка формировалась
symbios_zi
@symbiosss
Aug 27 2015 08:57
сорри. неверное понял
projct1
@projct1
Aug 27 2015 08:57
случайно удалил вопрос
как в ларе получить ссылку на предыдущую страницу роутинга? например перешёл я с admin.page.index на admin.page.create, нужно чтобы ссылка автоматом генерилась на admin.page.index, и так для каждого контроллера
Maxim
@Big-Shark
Aug 27 2015 08:59
@rorc $_SERVER )
@rorc а вообще открой redirect()->back(); да посмотри
symbios_zi
@symbiosss
Aug 27 2015 09:00
@Big-Shark а что не так с nested sets?
projct1
@projct1
Aug 27 2015 09:00
@Big-Shark там на основе referer, URL::previous() мне это не нужно так как при обновлении страницы эта ссылка будет вести на эту же страницу
symbios_zi
@symbiosss
Aug 27 2015 09:01
@Big-Shark для nested sets увидел готовое решение https://github.com/etrepat/baum что то не хочется писать реализацию с нуля
Maxim
@Big-Shark
Aug 27 2015 09:02
@symbiosss для Closure table тоже готовое есть
@symbiosss смотришь в базу, и хрен что разберет, переместить ветку может быть очень долго, Closure table както спокойней, и понятней, средничек эдакий)
@rorc значит свой функционал пиши, липа ласт пейдж, и обнавляй его только когда ласт пейдж не равен текущей странице
projct1
@projct1
Aug 27 2015 09:03
@Big-Shark придётся, ок, спс
symbios_zi
@symbiosss
Aug 27 2015 09:05
@Big-Shark closure table мне не удалось запустить на 5.1
Maxim
@Big-Shark
Aug 27 2015 09:05
@symbiosss ну так подправь и запусти)
symbios_zi
@symbiosss
Aug 27 2015 09:09
@Big-Shark а можешь посодействовать?
Maxim
@Big-Shark
Aug 27 2015 09:12
@symbiosss как?
symbios_zi
@symbiosss
Aug 27 2015 09:12
@Big-Shark лол, попробовал еще раз. Работает
Artemy
@lartie
Aug 27 2015 09:14

Как можно отправить массив в SQL зпрос?

DB::select('SELECT date FROM work WHERE moderator = ? AND date NOT IN ?', [$moderator, $data])

Мне выдает ошибку:
Parameter mismatch, pattern is a string while replacement is an array

JhaoDa
@jhaoda
Aug 27 2015 09:17
@artemiydeveloper он что, сам массив должен в строку преобразовать?
symbios_zi
@symbiosss
Aug 27 2015 09:17
@Big-Shark по следам статьи получается что closure table оптимальное решение http://habrahabr.ru/post/263629/
Artemy
@lartie
Aug 27 2015 09:18
@jhaoda я если его в implode засовываю, то SYNTAX ERROR получается и я думал, что не надо. его преобразовывать.
LabSergeev
@LabSergeev
Aug 27 2015 09:19
Господа, помогите. Файл не загружается. Есть форма <input name="file" id="file" type="file"> файл не загружается, проверял.
$file = Request::file('file');
dd($file);
Кто-нибудь сталкивался с такой проблемой?
В результате мне нужно получить размер загруженного файла и его имя
symbios_zi
@symbiosss
Aug 27 2015 09:20
@LabSergeev это не форма
это input
LabSergeev
@LabSergeev
Aug 27 2015 09:20
он находится в форме
<form action="upload" method="post">
<input name="title" type="text">
<input name="file" id="file" type="file">
<input type="submit" value="Отправить">
</form>
Maxim
@Big-Shark
Aug 27 2015 09:21
@artemiydeveloper а ты именно вручную запрос такое хочешь сделать?
Artemy
@lartie
Aug 27 2015 09:22
@Big-Shark да, нужно именно вручную.
symbios_zi
@symbiosss
Aug 27 2015 09:22
@LabSergeev а другие инпуты работают? например Request::title ?
LabSergeev
@LabSergeev
Aug 27 2015 09:22
@symbiosss да
именно с файлами беда
Maxim
@Big-Shark
Aug 27 2015 09:23
@artemiydeveloper DB::table('work')->select('date')->whereNotIn('date', ['date'])->get() так не подойдет?
symbios_zi
@symbiosss
Aug 27 2015 09:23
@LabSergeev ну вроде ничего криминального нет в твоем коде.
JhaoDa
@jhaoda
Aug 27 2015 09:24
@LabSergeev а где у формы атрибут enctype="multipart/form-data"?
Artemy
@lartie
Aug 27 2015 09:24
@Big-Shark я укоротил сам запрос. у меня там вызовы функций идут.
Если можно вот такое засунуть в такой запрос, то я только рад буду.
FROM_UNIXTIME(date, '%Y %D %M %h:%i') AS unique_date
LabSergeev
@LabSergeev
Aug 27 2015 09:25
@jhaoda спасибо, файл вроде загружаться начал))
Maxim
@Big-Shark
Aug 27 2015 09:25
@artemiydeveloper DB::raw()
JhaoDa
@jhaoda
Aug 27 2015 09:25
@LabSergeev ну тогда отметь вопрос решенным на Тостере
LabSergeev
@LabSergeev
Aug 27 2015 09:26
@jhaoda ок)
JhaoDa
@jhaoda
Aug 27 2015 09:26
@artemiydeveloper мы должны гадать, что и как ты имплодил, после чего получил ошибку синтаксиса?
Artemy
@lartie
Aug 27 2015 09:27
@Big-Shark спасибо.
@jhaoda обычный implode. implode(',', $data)
LabSergeev
@LabSergeev
Aug 27 2015 09:28
@jhaoda и @symbiosss большое спасибо за помощь, все работает
Artemy
@lartie
Aug 27 2015 09:36

@Big-Shark а можно сделать что то подобное?

DB::table('work')->select(DB::raw('FROM_UNIXTIME(date, \'%Y %D %M %h:%i\') AS unique_date')) ->where('moderator', $moderator) ->whereIn('unique_date', $data)->get();

Сейчас выдает ошибку, что такого столбца (unique_date) нету.

Maxim
@Big-Shark
Aug 27 2015 09:42
@artemiydeveloper посмотри какой он sql генерит
Vasiliy Romanov
@RootKeet
Aug 27 2015 09:44
Ребят делаю авторизацию, ларавел 5.0: роут: "
Route::get('/', function () {
return view('welcome');
});
Route::post('login', 'Auth\AuthController@validator');
" Аут\АутКонтроллер: стандартный " */
protected function validator(array $data)
{
return Validator::make($data, [
'name' => 'required|max:255',
'email' => 'required|email|max:255|unique:users',
'password' => 'required|confirmed|min:6',
]);
} на вьюхе переход реализован " ошибка: Argument 1 passed to App\Http\Controllers\Auth\AuthController::validator() must be of the type array, none given Вопрос: Как передать этот массив в контроллер?!
Artemy
@lartie
Aug 27 2015 09:44
@Big-Shark
select FROM_UNIXTIME(date, '%Y %D %M %h:%i') AS unique_date from `work` where `moderator` = 1 and unique_date not in (2015 27th August 08:25, 2015 27th August 08:34)
Maxim
@Big-Shark
Aug 27 2015 09:44
@RootKeet оформи пожалуйста код подобающим образом
Artemy
@lartie
Aug 27 2015 09:44
@Big-Shark Вроде бы все окей.
Maxim
@Big-Shark
Aug 27 2015 09:44
@artemiydeveloper запихни его в бд, глянь что скажет)
@artemiydeveloper я бы писал unique_date
Artemy
@lartie
Aug 27 2015 09:46
@Big-Shark не понял, куда писал?
Vasiliy Romanov
@RootKeet
Aug 27 2015 09:46
Ребят делаю авторизацию, ларавел 5.0: роут:
"'
Route::get('/', function () {
return view('welcome');
});
Route::post('login', 'Auth\AuthController@validator');
'''
Auth\AuthControlle: стандартный
'''
protected function validator(array $data)
{
return Validator::make($data, [
'name' => 'required|max:255',
'email' => 'required|email|max:255|unique:users',
'password' => 'required|confirmed|min:6',
]);
}
'''
на вьюхе переход реализован " ошибка: Argument 1 passed to App\Http\Controllers\Auth\AuthController::validator() must be of the type array, none given Вопрос: Как передать этот массив в контроллер?!
Сергей
@egent
Aug 27 2015 09:46
@artemiydeveloper похоже не хватает кавычек not in ('2015 27th August 08:25', '2015 27th August 08:34')
Vasiliy Romanov
@RootKeet
Aug 27 2015 09:46
Как оформлять? где прочитать?
Maxim
@Big-Shark
Aug 27 2015 09:46
@artemiydeveloper ты скажи что мускул тебе ответил)
Vasiliy Romanov
@RootKeet
Aug 27 2015 09:47
И можно помочь с вопросом гуру
Maxim
@Big-Shark
Aug 27 2015 09:47
@RootKeet в чате справа в окне воода 2 ссылки
Сергей
@egent
Aug 27 2015 09:47
@RootKeet нажми контрол шифт m
Artemy
@lartie
Aug 27 2015 09:47
@Big-Shark @egent по поводу кавычек видимо.
ERROR 1064 (42000): 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 '27th August 08:25, 2015 27th August 08:34)' at line 1
Maxim
@Big-Shark
Aug 27 2015 09:47
@RootKeet также просься не флудить, сообщения свои можно редактировать
Vasiliy Romanov
@RootKeet
Aug 27 2015 09:47
Ок
Maxim
@Big-Shark
Aug 27 2015 09:47
@RootKeet посмотрим что там случилось, сразу как код станет можно нормально прочитать
@artemiydeveloper ага, ругается что там тест без ковычек, теперь понять бы почему)
@artemiydeveloper dd($data); покажи
projct1
@projct1
Aug 27 2015 09:49
как в валидаторе проверить, чтобы поле было больше чем другое поле
Maxim
@Big-Shark
Aug 27 2015 09:49
@rorc ну как минимум анонимкой)
Artemy
@lartie
Aug 27 2015 09:51
@Big-Shark ого. я не знал про существование dd. ппц крутая вещь.
array:2 [
  0 => "2015 27th August 08:25"
  1 => "2015 27th August 08:34"
]
Maxim
@Big-Shark
Aug 27 2015 09:52
@artemiydeveloper странно както
projct1
@projct1
Aug 27 2015 09:52
@Big-Shark новичок, сразу видно))
Maxim
@Big-Shark
Aug 27 2015 09:53
@rorc да я не про дд, а про то как лара себя ведет
@artemiydeveloper проверь еще раз, точно ли тебе такой запрос генерит лара, и какую ошибку она возвращяет.
projct1
@projct1
Aug 27 2015 09:54
жаль что так нельзя проверять через анонимку:
        $this->validate($this->request, [
            'name' => 'required',
            'parent_id' => 'required|integer',
            'price' => 'required|integer|min:100',
            //'price_dealer' => 'required|integer|min:100|different:price',
            'price_dealer' => function($dd) {

            },
            'slug' => 'sometimes|required|unique:contents'
        ]);
Artemy
@lartie
Aug 27 2015 09:57
@Big-Shark вот мне выдает ошибку со сгенеренным SQL
Column not found: 1054 Unknown column 'unique_date' in 'where clause' (SQL: select FROM_UNIXTIME(date, '%Y %D %M %h:%i') AS unique_date from `work` where `moderator` = 1 and unique_date not in (2015 27th August 08:25, 2015 27th August 08:34)
Vasiliy Romanov
@RootKeet
Aug 27 2015 09:57
Я ставлю 3 кавычки у меня не форматируется код
Maxim
@Big-Shark
Aug 27 2015 09:58
@rorc http://laravel.com/docs/5.1/validation#conditionally-adding-rules там есть пару примеров как можно сделать
projct1
@projct1
Aug 27 2015 09:59
@Big-Shark спс
Maxim
@Big-Shark
Aug 27 2015 09:59
@RootKeet может потому что это не ковычки, а апострафы?
@artemiydeveloper попробуй в селекте unique_date заключить в `
Artemy
@lartie
Aug 27 2015 09:59
@RootKeet 3 кавычки на букве ё и шифт+ентер
Vasiliy Romanov
@RootKeet
Aug 27 2015 10:00

Ребят делаю авторизацию, ларавел 5.0: роут:

Route::get('/', function () {
return view('welcome');
});
Route::post('login', 'Auth\AuthController@validator');

Auth\AuthController: стандартный

protected function validator(array $data)
{
return Validator::make($data, [
'name' => 'required|max:255',
'email' => 'required|email|max:255|unique:users',
'password' => 'required|confirmed|min:6',
]);
}

на вьюхе переход реализован " ошибка: Argument 1 passed to App\Http\Controllers\Auth\AuthController::validator() must be of the type array, none given Вопрос: Как передать этот массив в контроллер?!

@artemiydeveloper спасибо
projct1
@projct1
Aug 27 2015 10:02
@RootKeet там же из коробки всё готово, зачем самому делать чё-то
Artemy
@lartie
Aug 27 2015 10:03
@Big-Shark всеравно Unknown column 'unique_date' in 'where clause' )
Vasiliy Romanov
@RootKeet
Aug 27 2015 10:03
@rorc У меня нет того что в документации "Шаблоны, используемые этими контроллерами, находятся в каталоге resources/views/auth и вы можете свободно изменять их так, как вам нужно." в частности этого . И я пытаюсь это сделать именно из коробки
Maxim
@Big-Shark
Aug 27 2015 10:04
@artemiydeveloper странно, чтот даже и не знаю, ну пропиши и where через raw
@RootKeet ты чтото както криво сделал с контролером
projct1
@projct1
Aug 27 2015 10:06
@RootKeet тут пробовал искать? https://github.com/laravel/laravel/tree/5.0/resources/views/auth
@RootKeet и роуты стандартные в routes.php
Route::controllers([
    'auth' => 'Auth\AuthController',
    'password' => 'Auth\PasswordController',
]);
Vasiliy Romanov
@RootKeet
Aug 27 2015 10:07
@Big-Shark У меня есть шаблон там на одной странице табами "Вход Регистрация Восстановление". Там это отдельными страницами а у меня все на одной.
Maxim
@Big-Shark
Aug 27 2015 10:08
@RootKeet ну так тебе нужно тогда метод переопределить и передвать переменную в метод валидации
Vasiliy Romanov
@RootKeet
Aug 27 2015 10:11
@Big-Shark через роуты? Как это сделать? Сейчас прописал стандартные роуты. Ввожу в поля данные нажимаю регистрация и меня бросает на эту же страницу пользователь не появляется
Maxim
@Big-Shark
Aug 27 2015 10:11
@RootKeet почему через роуты, в контролере ты это делать должен
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:13

Сорри что так пропал

Про внешние ключи знаю, знаю зачем используются и тд, но у лары свой красноречивый язык для работы с бд вот и интересует где же все же почитать про все возможности при создании полей в бд что бы она могла проявить в дальнейшем всю свою красноречивость и красоту, в частности про onDelete('cascade') про который в официальной документации написана пара строк.
хотя бы понять есть ли смысл в общем случаи указывать $table->foreign('user_id')->references('id')->on('users'); учитывая что в доке по связям про это ни сказано ни слова, лишь сказано о необходимости поля под внешний ключ, для которого я все это время использовал обычный беззнаковый инт
@Big-Shark а просто апи класса тебе не достаточно?
Вроде всегда хватало пока до каскадного удаления дело не дошло, отсюда и вопрос, нужно указывать внешние ключи в общем случаи при создании полей в бд или только для каскадного удаления? Так же что касается удаления интересует есть ли возможность у всех связаных(скажем так дочерних) элементов заменить внешний ключ с удаляемого на какой-то конкретный, что бы не получилось битой связи? к примеру при удалении пользователя заменить id в его постах к примеру на 1 под которой находилась бы какая-нибудь стандартная запись пользователя Anonymous? Или сначала получаем все посты, проходим по всем меняем ключ, а затем удаляем родителя?

@egent ну допустим есть таблица Users и UsersProfiles - связь один к одному, Если удалить пользователя, то автоматически удалится профиль юзера из БД если есть onDelete('cascade')
Примерно понял, но хотелось бы найти где про все это можно более подробно почитать. А так же возник вопрос как правильно это указать?

//так
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
//или так
$table->integer('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
//или как?

И все-таки нужно ли указывать внешние ключи при создании миграций или по сути они не нужны пока дело не доходит до удаления?

Vasiliy Romanov
@RootKeet
Aug 27 2015 10:14

@Big-Shark сейча все выглядит вот так:

  <form role="form" method="post" action="auth/register">
                          <div class="form-group">
                              <label for="InputUserName">Имя пользователя<sup>*</sup></label>
                              <input type="text" class="form-control" id="InputUserName">
                          </div>
                          <div class="form-group">
                              <label for="InputEmail">Email<sup>*</sup></label>
                              <input type="email" class="form-control" id="InputEmail">
                          </div>
                          <div class="row">
                              <div class="col-md-6">
                                  <div class="form-group">
                                      <label for="InputPassword">Пароль<sup>*</sup></label>
                                      <input type="password" class="form-control" id="InputPassword">
                                  </div>
                              </div>
                              <div class="col-md-6">
                                  <div class="form-group">
                                      <label for="InputConfirmPassword">Подтверждение пароля<sup>*</sup></label>
                                      <input type="password" class="form-control" id="InputConfirmPassword">
                                  </div>
                              </div>
                          </div>
                          <div class="row">
                              <div class="col-md-8">
                                  <label class="checkbox-inline">
                                      <input type="checkbox" id="inlineCheckbox1" value="option1"> Я прочитал<a href="#"> условия пользования</a>.
                                  </label>
                              </div>
                              <input type="hidden" name="_token" value="{!! csrf_token() !!}">
                              <div class="col-md-4">
                                  <button type="submit" class="btn btn-ar btn-primary pull-right">Зарегистрироваться</button>
                              </div>
Route::get('/', function () {
    return view('welcome');
});
Route::controllers([
    'auth' => 'Auth\AuthController',
    'password' => 'Auth\PasswordController',
]);
  protected function validator(array $data)
    {
        return Validator::make($data, [
            'name' => 'required|max:255',
            'email' => 'required|email|max:255|unique:users',
            'password' => 'required|confirmed|min:6',
        ]);
    }

    /**
     * Create a new user instance after a valid registration.
     *
     * @param  array  $data
     * @return User
     */
    protected function create(array $data)
    {
        return User::create([
            'name' => $data['name'],
            'email' => $data['email'],
            'password' => bcrypt($data['password']),
        ]);
    }
}

Не могу понять что от меня требуется :(

Artemy
@lartie
Aug 27 2015 10:15
@Big-Shark что то не догоняю как сделать через raw? Вот это?
DB::table('work')
            ->select(DB::raw('FROM_UNIXTIME(date, \'%Y %D %M %h:%i\') AS unique_date'))
            ->where('moderator', $moderator)
            ->whereNotIn(DB::raw('unique_date'), $data)
            ->get();
Maxim
@Big-Shark
Aug 27 2015 10:16
Трое на одного?
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:16
Ага =)
Сергей
@egent
Aug 27 2015 10:16
@Qweqwe1234 можно и без них
Artemy
@lartie
Aug 27 2015 10:17
:smile:
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:17
@egent спасибо, а как их правильно определять?
Maxim
@Big-Shark
Aug 27 2015 10:18
@Qweqwe1234 просто иди и почитай про внешнии ключи) это функции бд а не лары
Сергей
@egent
Aug 27 2015 10:18
@Qweqwe1234 что значит правильно определять?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 10:18
котаны, вышел шторм 9.5 EAP
если что
Maxim
@Big-Shark
Aug 27 2015 10:19
@RootKeet ты не менял контролер? ты только поменял вью и все?
Artemy
@lartie
Aug 27 2015 10:19
@SerafimArts хотел купить шторм, а тут доллар 70, не дело это вообще)
Maxim
@Big-Shark
Aug 27 2015 10:20
@artemiydeveloper
->where(DB::raw('unique_date as (.implode('\', \'', $data).')')
Vasiliy Romanov
@RootKeet
Aug 27 2015 10:20
@Big-Shark да, не менял
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:20
@egent
//так
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
//или так
$table->integer('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
//или как?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 10:21
@artemiydeveloper тебе ещё повезло
я вообще привык к idea
а она в два раза дороже
Maxim
@Big-Shark
Aug 27 2015 10:21
@artemiydeveloper уже упал) покупай быстрей)
@SerafimArts а я все еще на 8
@RootKeet тогда магия случается, без точной ошибки и трейся я ничего сказать не могу, а разбираться нет времени, может кто другой поможет
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:22
@Big-Shark Да я уже запутался с ними. Работа один фиг на Eloquent ложится как я понимаю и простые знания внешних ключей не сильно помогут к пониманию уже готовых реализованных магических методов в Eloquent ORM
Artemy
@lartie
Aug 27 2015 10:22
@Big-Shark 69 :smile: погоды не играет)
Maxim
@Big-Shark
Aug 27 2015 10:22
@RootKeet ах да, и такие куски кода, лучше на пастбин
Сергей
@egent
Aug 27 2015 10:22
@Qweqwe1234 делай просто $table->integer('user_id')->unsigned();
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:23
@egent а если каскадное удаление необходимо?
Maxim
@Big-Shark
Aug 27 2015 10:23
@artemiydeveloper вообще 66.95
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:23
в данный момент так всегда и делал
Maxim
@Big-Shark
Aug 27 2015 10:23
@Qweqwe1234 ларе пофиг на ключи, но базе не пофиг
Artemy
@lartie
Aug 27 2015 10:23
@Big-Shark я тут смотрел. http://www.cbr.ru/
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:23
@Big-Shark все, теперь въехал) Спасибо)
Сергей
@egent
Aug 27 2015 10:23
@Qweqwe1234 если необходимо то добавляй каскадное удаление )
@Qweqwe1234 3 и 4 строка вместе..
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:24
@egent спасибо
Vasiliy Romanov
@RootKeet
Aug 27 2015 10:25
@Big-Shark сейчас просто когда нажимаю зарегистрироваться, страница просто обновляется без ошибок. В консоли
Remote Address:127.0.0.1:80
Request URL:http://localhost/public/auth/register
Request Method:POST
Status Code:302 Found
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:25
А где можно почитать как в миграциях задать тригеры и прочие плюшки для бд?
Maxim
@Big-Shark
Aug 27 2015 10:25
@artemiydeveloper http://www.sberometer.ru/ тут чуваки кур биржевой выводят
@RootKeet как она может обновлятся если там редиректы, ну или он может вернуть тебя обратно и вывести ошибки
Artemy
@lartie
Aug 27 2015 10:27

@Big-Shark всеравно ошибка.

select FROM_UNIXTIME(date, '%Y %D %M %h:%i') AS unique_date from `work` where `moderator` = 1 and unique_date in (2015 27th August 08:25,2015 27th August 08:34) is null

И еще в конце добавляет is null

Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:27
или это невозможно? но внешние же ключи задаются...
Artemy
@lartie
Aug 27 2015 10:27
@Big-Shark к запросу.
Vasiliy Romanov
@RootKeet
Aug 27 2015 10:28
@Big-Shark но ошибки не выводит и отправляет запрос по auth\register и возвращает 302 ошибку сервера
Maxim
@Big-Shark
Aug 27 2015 10:28
@artemiydeveloper
->whereRaw('unique_date as (.implode('\', \'', $data).')')
@RootKeet ну так сделай чтоб выводила
Vasiliy Romanov
@RootKeet
Aug 27 2015 10:29
@Big-Shark debug true? в настройках приложения?
Maxim
@Big-Shark
Aug 27 2015 10:29
@RootKeet ну наверное, ты че первую неделю программируешь.
Vasiliy Romanov
@RootKeet
Aug 27 2015 10:30
@Big-Shark на ларавеле да
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:31
@egent спасибо
Artemy
@lartie
Aug 27 2015 10:32
@Big-Shark никак.
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:33
@egent правильно понимаю что через лару только onUpd и onDel с внешними ключами есть и больше ничего для работы с бд, остальное руками через RAW?
Maxim
@Big-Shark
Aug 27 2015 10:33
@artemiydeveloper хм чтото странное, найди тут у кого еще лара развернута и кто может протестировать твой скрипт.
Qweqwe1234
@Qweqwe1234
Aug 27 2015 10:34
разобрался и с установкой в определенное значение через SET NULL
Artemy
@lartie
Aug 27 2015 10:36
Кто может запрос затестить?
Сергей
@egent
Aug 27 2015 10:36
@Qweqwe1234 можно еще и колонки переименовывать )) $table->renameColumn('from', 'to');
Artemy
@lartie
Aug 27 2015 10:37
@Big-Shark хотя врядли получится, у мало кого дата хранится в unixtime, по дефолту ведь таймстамп
@Big-Shark думаю, что многие придерживаются стандартному
Maxim
@Big-Shark
Aug 27 2015 10:37
@artemiydeveloper ну ты можешь сделать мини дамп для теста, и передать его
@artemiydeveloper у меня нет лары под рукой, и элоквоента, я на пропеле)
romach3
@romach3
Aug 27 2015 10:46
@Big-Shark ах ты ж отступник. сжечь )
Maxim
@Big-Shark
Aug 27 2015 10:47
@romach3 это за что меня сжегать?
romach3
@romach3
Aug 27 2015 10:47
за пропел и ddd )
Maxim
@Big-Shark
Aug 27 2015 10:57
@romach3 все не как у людей)
Artemy
@lartie
Aug 27 2015 10:59
@Big-Shark решил)
@Big-Shark точнее начал доставать людей на stackowerflow и мне подсказали. :smile:
Maxim
@Big-Shark
Aug 27 2015 11:02
@artemiydeveloper давай решение
Artemy
@lartie
Aug 27 2015 11:03
@Big-Shark нужно было явно в самом where приводить к нужному формату, тоесть
select FROM_UNIXTIME(date, '%Y %D %M %h:%i') from `work` where `moderator` = 1 and FROM_UNIXTIME(date, '%Y %D %M %h:%i') not in ('2015 27th August 08:25', '2015 27th August 08:34');
Maxim
@Big-Shark
Aug 27 2015 11:04
@artemiydeveloper понятно, а как это в квери билдере смотрится?
Artemy
@lartie
Aug 27 2015 11:11
DB::table('work')
            ->select(DB::raw('FROM_UNIXTIME(date, \'%Y %D %M %h:%i\') AS unique_date, action, moderator'))
            ->where('moderator', $moderator)
            ->whereRaw(DB::raw('FROM_UNIXTIME(date, \'%Y %D %M %h:%i\') not in (\'' . implode('\',\'', $data) . '\')'))
            ->get();
@Big-Shark вот так.)
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:13
Всем доброго времени суток! :)
Подскажите пожалуйста, по урокам на laracasts меня научили устанавливать HTML and Form Builders ч/з illuminate пакет, а на GitHub ещё более популярен я смотрю пакет Collective.
Так вот, хотел спросить, какой из них лучше, или нет разницы?
А ещё по Collective есть крутой сайт (ну, я только что для себя открыл): http://laravelcollective.com/docs/5.0/html
This message was deleted
JhaoDa
@jhaoda
Aug 27 2015 11:14
@Nur777 это один и тот же пакет
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:14
@jhaoda а почему по разному называют одни и те же вещи?
JhaoDa
@jhaoda
Aug 27 2015 11:14
@Nur777 а так же здесь можно редактировать сообщения
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:14
спасибо за ответ, кстати)
JhaoDa
@jhaoda
Aug 27 2015 11:14
@Nur777 потом что его выделили из состава ларавель и отдали на поддержку сообществу
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:14
ой, точно, забыл, )) ок, буду иметь ввиду)
@jhaoda Ну, это понятно. Я про то, почему существует illuminate, если есть collective и наоборот? Почему бы один не оставить?
JhaoDa
@jhaoda
Aug 27 2015 11:16
@Nur777 потому что совместимость
Ivan Klimchuk
@Alroniks
Aug 27 2015 11:17
ребят, а поделитесь соображениями, как получше реализовать механизм публикации отложенных постов. Грубо говоря, когда пост написан, но дата публикации - в будущем и нужно его опубликовать по расписанию. Решение в лоб - cron скрипт, но как-то не айс. Хочется больше контроля на уровне приложения
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:17
@jhaoda благодарю, но, всё равно не понятно...
JhaoDa
@jhaoda
Aug 27 2015 11:17
@Nur777 ну тогда юзай http://laravelcollective.com/docs/5.1/html и не забивай голову
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:17
@Alroniks так просто сделай так, чтобы выводились по дате и всё)
JhaoDa
@jhaoda
Aug 27 2015 11:17
Понимание придет само
@Alroniks какого контроля тебе хочется?
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:18
@jhaoda а если я уже установил пакет illuminate - ничего страшного?
и ещё вопрос - инструкции с сайта collective подходят для illuminate, не знаешь?
JhaoDa
@jhaoda
Aug 27 2015 11:18
@Nur777 откуда я знаю, какая у тебя версия?
Ivan Klimchuk
@Alroniks
Aug 27 2015 11:18
@Nur777 важно, чтобы тригерилось именно какое-то событие, так как может быть еще автопост в соцсети и тд
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:18
@Alroniks
public function scopePublished($query)
    {
        //создали scope, который можно использовать при выборке записей ещё в самом контроллере (удобнее)
        $query->where('published_at','<=', Carbon::now());
        //формирует запрос, на получение только тех записей, которые должны быть опубликованы
    }
@Alroniks ну, это я для примера.
ааа
Ivan Klimchuk
@Alroniks
Aug 27 2015 11:19
ну скоуп понятно, правда у меня блог на файлах, без БД )
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:19
@jhaoda а, понял) хорошо, буду иметь ввиду)
Ivan Klimchuk
@Alroniks
Aug 27 2015 11:19
но не суть, эта идея понятна. важно - чтобы событие, как выше написал
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:20
@Alroniks я тебя понял, у меня честное слово не хватает знаний.
apocello2008
@apocello2008
Aug 27 2015 11:20

Всем привет ребят! Очень глупый вопрос по js.. Почему данная конструкция не работает и как заставить её работать?

var checkuser_callback
collection.findOne({login:inpData.login}, function(err, item) {
checkuser_callback = item
})
console.log(checkuser_callback)

Выводит undefined

JhaoDa
@jhaoda
Aug 27 2015 11:20
@Alroniks я не понимаю, в чем проблема-то? Пишешь консольную команду, которая публикует пост. Там тебе и события, и контроль. Команда вызывается кроном. Всё.
@Nur777 что ты будешь иметь ввиду? Я у тебя версию ларавель спросил.
Ivan Klimchuk
@Alroniks
Aug 27 2015 11:23
@jhaoda ну все равно крон остается, которые раз в N времени дергает весь список на предмет чтобы опубликовать. У меня была идея делать через очередь. В момент апдейта постов из источника (репо на github), расставлять таски в очереди по расписанию. Только есть сомнения, что такое возможно
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:23
@jhaoda "буду иметь ввиду" - ещё выше писал, когда ты не спрашивал про версию лары, про "возможность изменять сообщения"
а как версию лары узнать?
JhaoDa
@jhaoda
Aug 27 2015 11:23
:(
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:23
я просто сегодня только скачал с гитхаба
JhaoDa
@jhaoda
Aug 27 2015 11:23
@Nur777 может надо начать с чтения документации?
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:23
последняя значит версия :)
@jhaoda да, я это уже сделал )
JhaoDa
@jhaoda
Aug 27 2015 11:24
@Alroniks и в чем принципиальная разница?
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:24
5,0 или 5,1 - вот в чём вопрос)
5,1,00000,1 какая-нибудь)
JhaoDa
@jhaoda
Aug 27 2015 11:24
Да ты и 4.2 мог скачать
Ivan Klimchuk
@Alroniks
Aug 27 2015 11:24
@jhaoda ну как бы да, вариантов все равно нет )
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:24
нет, не мог) я не настолько глуп))
JhaoDa
@jhaoda
Aug 27 2015 11:25
@Alroniks я не уверен, что в очередях можно задавать таймаут в месяц, например
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:25
я имел опыт построения приложений на ларе 4,2 и тут надо быть конкретно деревянным, чтобы не отличить пятую от четвертой)
по крайней мере, я бы не писал сюда вопрос по поводу Html и Form builder, если бы у меня четверка стояла) обижаешь @jhaoda
Ivan Klimchuk
@Alroniks
Aug 27 2015 11:25
@jhaoda в доке максимум - месяц ->monthly();
JhaoDa
@jhaoda
Aug 27 2015 11:26
@Nur777 ну ок, значит у тебя 5.1 и непонятно, нахрена ты поставил старый пакет
@Alroniks это ты про планировщик крона
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:26
я ж говорю, так по видеокурсу было, и вот так и получилось...мда.
JhaoDa
@jhaoda
Aug 27 2015 11:26
@Nur777 короче, я тебе дал ссылку
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:26
@jhaoda где?
а нашел)
всё, побежал устанавливать новую версию!!!)

@jhaoda после composer update (а перед этим я удалил строку: "illuminate/html": "5." и поставил вместо него "laravelcollective/html": "5.1.")
получаю такое сообщение...

[Symfony\Component\Debug\Exception\FatalErrorException]
Class 'Illuminate\Html\HtmlServiceProvider' not found

подскажи пожалуйста, что не так?

JhaoDa
@jhaoda
Aug 27 2015 11:31
@Nur777 доку надо читать всю, а не первые три строки
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:31
а, понятно
JhaoDa
@jhaoda
Aug 27 2015 11:31
Ты же «имел опыт построения приложений на ларе», что за вопросы-то?
Ilnur Shaykhutdinov
@Nur777
Aug 27 2015 11:36
а так - простые сайты делал.
всё я понял, ошибка исправлена)
@jhaoda спасибо тебе)
Ivan Klimchuk
@Alroniks
Aug 27 2015 11:41
Больно не пинайте, но может кому пригодиться. Ну и issues приветствуются https://github.com/Alroniks/dtms
Они там точно будут
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 11:46
так, а зачем, если есть карбон?
JhaoDa
@jhaoda
Aug 27 2015 11:48
Только хотел спросить :)
jongleb
@jongleb
Aug 27 2015 11:49
Ребзи какой нибудь сахар для работы с JSON есть у ларавел?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 11:49
о, только сейчас заюзал новые cli команды ларки с аргументами
по сравнению с 4.2 - это просто бомба
JhaoDa
@jhaoda
Aug 27 2015 11:50
Например какой?
Vasiliy Romanov
@RootKeet
Aug 27 2015 11:50
Вопрос: как передать из вью параметры в контроллер через роут?
JhaoDa
@jhaoda
Aug 27 2015 11:50
@SerafimArts ты смотри, затянет
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 11:50
Доброго времени суток. Хотел бы спросить совета у знающих людей.
Хочу организовать на сайте авторизацию через внешний сервис, который отдает уникальный id пользователя.
Вопрос, как это сделать удобным в использовании?
Например, при стандартной авторизации есть возможность доставать текущего юзера по Auth::user() или $request->user(). Можно ли не терять эту возможность? Или добавить удобный аналог?
Так же middleware, которые позволяют защищать роуты от неавторизованных пользователей... Вот это все...
Ковырял socialite, но не понял как там строится взаимодействие.
Подскажите, пожалуйста, теорию и практику этого дела.
Qweqwe1234
@Qweqwe1234
Aug 27 2015 11:50
Понимаю вопрос глупый, пора заканчивать, но все же: Как получить все записи из БД за исключением одной? Post::all() а есть что-нибудь чтоб из этого одну из записей убрать?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 11:50
@jongleb что-то вроде этого? https://github.com/SerafimArts/Gist
jongleb
@jongleb
Aug 27 2015 11:51
Крутой ты я понял1
стоп а где циферка
5.1
?
там тока циферка 4
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 11:52
@jhaoda ой да не говори
@jongleb ну подгони под 4.2
тьфу
под 5.1
проект заброшен, ибо никто не пользуется фильтрацией исходящих данных =)
проще на уровне миддлвари сделать
jongleb
@jongleb
Aug 27 2015 11:53
Я ТОЖЕ ТАК ДУМАЛ
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 11:53
изначально всё слизано с rails rabl, если что: https://github.com/nesquena/rabl
jongleb
@jongleb
Aug 27 2015 11:53
крутаых
это круто
я думаю на уровне
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 11:54
но добиться такой же простоты мне не удалось
надо наверное попробовать на уровне шаблонизатора сделать
jongleb
@jongleb
Aug 27 2015 11:55
Ваще прикольно было бы
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 11:55
что-то вроде return view('some.any', ['users' => User::all()]) где some/any - правила для ответа
Vasiliy Romanov
@RootKeet
Aug 27 2015 11:56
Ребят помоги по teamviwer разобраться с мелочами ларавела пожалуйста (
jongleb
@jongleb
Aug 27 2015 11:56
А еще прям 999 круто
прям в блейд
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 11:56
например формат some/any.response, где уже в декларативном формате описывать какие данные отдавать.
Ivan Klimchuk
@Alroniks
Aug 27 2015 11:56
@SerafimArts он не умеет microseconds, достаточно в issues заглянуть
Alexey
@Butochnikov
Aug 27 2015 11:59
@RootKeet с мелочами можно и тут, без всяких TW
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 12:00

что-то вроде:

@collection($users)
    @fields(['id', 'login' => 'name'])

    @child('created')
          @fields([
              'rfc2822' => $this->created_at->toRFC2822String(),
              'timestamp' => $this->created_at->timestamp
          ])
    @endchild
@endcollection

только хз, слишком громоздко наверное для вот такого json:

[
    {"id": "USER_ID_1", "name": "USER_LOGIN", "created": {"rfc2822": "CREATED_RFC2822_FORMAT", "timestamp": "CREATED_UNIX_TIMESTAMP"},
    {"id": "USER_ID_2", "name": "USER_LOGIN", "created": {"rfc2822": "CREATED_RFC2822_FORMAT", "timestamp": "CREATED_UNIX_TIMESTAMP"}
]
кто что думает по этому поводу?
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:07
@Butochnikov помоги пожалуйста разобраться с глупостью. Как исключить один элемент при получении из бд путем ModelName::all()?
Alexey
@Butochnikov
Aug 27 2015 12:09
@Qweqwe1234 вот даже и не знаю какой из способов тебе посоветовать ) этот элемент так сильно мешает? а если просто не использовать его?
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:13
@Butochnikov мозг кипит, поэтому прошу прощения за столь глупый вопрос, а если по делу: да при получении из бд есть один элемент который я не хочу обрабатывать и получать в общем случаи, и вместо того что бы применить фильтр или через where задать не равенство, я хочу просто удалить его, всего один конкретный элемент.
или это будет не быстрее получения через where?
NelinD
@NelinD
Aug 27 2015 12:15
@Qweqwe1234 зарегай глобальный скоуп)
Сергей
@egent
Aug 27 2015 12:15
@Qweqwe1234 да проще с where
Alexey
@Butochnikov
Aug 27 2015 12:16
@Qweqwe1234 сделай hidden в модели
NelinD
@NelinD
Aug 27 2015 12:16
@Butochnikov hidden - поля, ему нужен экземляр
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:17
@Butochnikov речь не о поле, а о целой строке
@egent Знаю что проще, думал так будет быстрее и лучше...
@NelinD Используется только в одном контроллере, да и фильтрация что в скоупе что в конкретном запросе разницы никакой
вернее даже в одном экшене
Alexey
@Butochnikov
Aug 27 2015 12:19
значит я не верно понял, тогда да, where вернее будет
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:20
Эх, значит верну как было =( Неужели нельзя просто взять и выдрать одну запись из коллекции?
И еще вопрос как альтернативный вариант поместить эту запись первой и делать skip(1)->get() - убивает всю понятность кода пока в бд не залезешь, но с другой стороны никакой фильтрации и просто получение всех объектов. Или вообще не стоит забивать себе голову и бояться фильтрации и она не занимает большого количества времени на больших объемах данных? Речь идет как о where так и о других возможных
Vlad Shcherbin
@VladShcherbin
Aug 27 2015 12:24
@Qweqwe1234 where title <> 'trololo’
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:26
@VladShcherbin да знаю я знаю... whereNotIn()вопрос изначально был об удалении записи из коллекции...
NelinD
@NelinD
Aug 27 2015 12:27
@Qweqwe1234 зачем удалять, если можно не брать?
Vlad Shcherbin
@VladShcherbin
Aug 27 2015 12:28
не понимаю суть вопроса, если он не нужен - удали его навсегда, если нужен, но нужно не показывать в выдаче - используй where
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:29
@NelinD Так вроде лишняя фильтрация... То есть он все равно будет брать и проверять подходит под условия или нет, а если мы возьмем все и удалим один из них - фильтрации никакой
Сергей
@egent
Aug 27 2015 12:29
@Qweqwe1234 а в будущем не появится еще один такой элемент?
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:30
@egent Нет, единственный особенный
@VladShcherbin кто сказал что он не нужен? Речь о том что он в текущем запросе ненужен
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 12:31

Не подскажите по этому вопросу?

Доброго времени суток. Хотел бы спросить совета у знающих людей.
Хочу организовать на сайте авторизацию через внешний сервис, который отдает уникальный id пользователя.
Вопрос, как это сделать удобным в использовании?
Например, при стандартной авторизации есть возможность доставать текущего юзера по Auth::user() или $request->user(). Можно ли не терять эту возможность? Или добавить удобный аналог?
Так же middleware, которые позволяют защищать роуты от неавторизованных пользователей... Вот это все...
Ковырял socialite, но не понял как там строится взаимодействие.
Подскажите, пожалуйста, теорию и практику этого дела.

Vlad Shcherbin
@VladShcherbin
Aug 27 2015 12:31
@Qweqwe1234 так чем where в запросе не подходит то?))
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:32
И так делаю через where но задумался о других возможных вариантах.
@VladShcherbin Еще раз(не утверждаю что мои рассуждения верны) Что проще, брать элементы и проверять все подходят ли они по условию, или взять все и выкинуть один?
jongleb
@jongleb
Aug 27 2015 12:34
@SerafimArts А какой самый красивый и лаконичный способ из огромного JSON сделать готовую для HTML form коллекцию
для html model
Vlad Shcherbin
@VladShcherbin
Aug 27 2015 12:34
@Qweqwe1234 если у тебя не тысячи людей на сайте каждую секунду, разницы между (взять всё и удалить 1) и (исключить 1 в запросе изначально) ты не увидишь. я бы выбрал исключить сразу ;)
jongleb
@jongleb
Aug 27 2015 12:35
совсем круто было бы еще конечно поля создавать рекурсивно но с учетом что каожлого JSON отдельный формат
но в целом
могу формочек готовых
понаделать
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:36
@VladShcherbin если разницы никакой вернемся к первому вопросу который я задал: как удалить элемент из коллекции ModelName::all()?
просто интересно
Alexey
@Butochnikov
Aug 27 2015 12:36
@Furdarius ты что-то перемудрил. почитай про oauth2 для начала. а авторизация и работа с пользователями в своем приложении это разные вещи.
NelinD
@NelinD
Aug 27 2015 12:36
@Qweqwe1234 опознать сможешь?
Vlad Shcherbin
@VladShcherbin
Aug 27 2015 12:37
@Qweqwe1234 держи, там все 3 варианта
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:38
@NelinD да, хотя думаю уже остановиться на варианте зарезервировать первую позицию под него и пропускать в обычных запросах с комментом в коде, аля зарезервированные области данных
Alexey
@Butochnikov
Aug 27 2015 12:38
@VladShcherbin :+1:
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:39
@VladShcherbin Спасибо, помогло)
jongleb
@jongleb
Aug 27 2015 12:39
Кто ниубдь значет хороший js плагин для редактирования JSON?
NelinD
@NelinD
Aug 27 2015 12:39
да блин
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:39
А если серьезно, мб не будем фигней страдать?
Vlad Shcherbin
@VladShcherbin
Aug 27 2015 12:40
Qweqwe1234
@Qweqwe1234
Aug 27 2015 12:42
@VladShcherbin благодарю, попробую
Vlad Shcherbin
@VladShcherbin
Aug 27 2015 12:43
@Qweqwe1234 а вообще, не страдай ерундой и используй where в бд, они для того и созданы, чтобы делать нужную выборку, а не тащить всё и потом удалять
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 12:51
@Butochnikov, а вы не могли бы прояснить про работу с пользователями? Как организовать создание пользователей при авторизации через внешний сервис (В моем случае Steam)
И последующую работу с ними
Если есть ссылки на статьи по этой теме, буду благодарен.
apocello2008
@apocello2008
Aug 27 2015 12:52
@Furdarius Все начинается с того, что ты хакаешь базу и выгружаешь всех пользователей XD...
jongleb
@jongleb
Aug 27 2015 12:54
Проектировщики подкиньте идею .Нужно хранить контент разных сущностей. Предполагал сделать табличку типа name(уникальный) и data_json(разные количества полей и разные поля) но сейчас прихожу к тому что я задолбаюсь на js это делать в том плане что нужны некоторые правила. то есть где то подготовить TEXTAREA а где то input.С другой стороны раскидывать контентые таблички тоже не вариант.как лучше поступить?
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 12:54
@apocello2008 если начинать с этого этапа, то боюсь создание авторизации затянется на годы)
apocello2008
@apocello2008
Aug 27 2015 12:55
@Furdarius Ну если ты спец то пара ночей и стопка бутербродов XD
@jongleb Гоу в личку
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 12:55
@apocello2008 К сожалению пока только вступил на этот путь, полный трудностей. Поэтому стопки не хватит)
apocello2008
@apocello2008
Aug 27 2015 12:56
@Furdarius Ну если будут вопросы по этому пути то обращайся =)
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 12:56
@apocello2008 Я вот и обратился
JhaoDa
@jhaoda
Aug 27 2015 12:56
@Furdarius https://github.com/invisnik/laravel-steam-auth все же в примере показано
apocello2008
@apocello2008
Aug 27 2015 12:56
@Furdarius Я про другой путь...
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 12:59
@jhaoda Да, но, в данном случае, как я понимаю Auth работать не будет с этим юзером, так как там оно строго привязано к полю password?
И если уж разговор зашел, то у меня вопрос, при обновлении миграций (добавления поля steamid) проблем не возникнет с моделью?
@apocello2008 Эти пути близки
Alexey
@Butochnikov
Aug 27 2015 13:02
@Furdarius по сути тебе уже ответили. сервис отвечает за свою часть, а ты за свою. получил ответ, что пользователь авторизован и сохраняй все, что тебе нужно из доступного )
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 13:06
@Butochnikov это я понимаю. Я не понимаю как с этим работать дальше? Ведь работа с пользователем строится через фасад Auth?
После добавления пользователя в базу у меня же не будут доступны методы Auth? Например тот же Auth::check()
symbios_zi
@symbiosss
Aug 27 2015 13:07
@Butochnikov как дела с лараконРУ?
Alexey
@Butochnikov
Aug 27 2015 13:10
@Furdarius если по простому, то все так же... ну не авторизован пользователь, что делаем? выводим форму, а дальше запрос уже идет на сервис, обратно ответ и т.д. за это пакет и отвечает. Дока и примеры есть. Ты просто побольше почитай и попробуй, сразу яснее будет.
@symbiosss все так же... пока спонсоров нет )
LabSergeev
@LabSergeev
Aug 27 2015 13:12
Всем привет. В официальных доках есть пример Email рассылке только определенному пользователю.
Просто взять и вставить вместо адреса переменную не получается. $message->to('foo@example.com', 'John Smith')->subject('Welcome!'); Так как сделать примерно такую конструкцию $message->to($email, 'John Smith')->subject('Welcome!'); ?
symbios_zi
@symbiosss
Aug 27 2015 13:12
@Butochnikov с JetBrains не планируешь пообщаться? Могу я, если уж так )
Alexey
@Butochnikov
Aug 27 2015 13:15
@symbiosss пообщаться можно много с кем, но по опыту скажу, что сначала надо и предложить еще и план подробный составить. Просто так пообщаться можно всегда.
symbios_zi
@symbiosss
Aug 27 2015 13:15
@Butochnikov предлагаю как нибудь голосом по скайпу обсудить.
Alexey
@Butochnikov
Aug 27 2015 13:15
можно
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 13:16
@Butochnikov Хорошо, спасибо. Сейчас буду пробовать реализовывать задуманное. Скорее всего еще вернусь к обсуждению этого вопроса.
LabSergeev
@LabSergeev
Aug 27 2015 13:17
Куку, народ) Помогите
Alexey
@Butochnikov
Aug 27 2015 13:19
@LabSergeev смотри тут http://laravel.com/docs/5.1/mail#sending-mail
@LabSergeev там как раз пример для тебя
LabSergeev
@LabSergeev
Aug 27 2015 13:20
Мда.. В английскую документацию чаще надо заглядывать..
Alexey
@Butochnikov
Aug 27 2015 13:20
@LabSergeev русская с января не обновлялась (
NelinD
@NelinD
Aug 27 2015 13:36
Carbon, diffForHumans было ли кому нужно выводить разницу с разным уровнем детализации?
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 13:41
@Butochnikov если из таблицы users убрать поля email, password, то не будут ли выскакивать ошибки при попытки сделать Auth:check()
Oleg
@Malezha
Aug 27 2015 13:46
@Furdarius посмотри реализацию метода
lafafm
@lafafm
Aug 27 2015 13:49

Всем привет,
Возникла небольшая проблема при переходе на https

Есть роут, который в данный момент просто редиректит на другой:

Route::any('/app2', function(){
    return Redirect::to('/app1');
});

При переходе на страницу https://site.com/app2 все работает нормально, и я попадаю на страничку app1,
Но при переходе на страницу без https http://site.com/app2 - редиректит на https но на главную страницу, т.е. https://site.com/index.php

Редирект на https настраивал сначала через .htacess, потом в App::before, строчкой URL::forceSchema('https');

Artemiy Ryabinkov
@Furdarius
Aug 27 2015 14:15
@Malezha как я понял из исходников, мне нужно писать кастомные UserProvider и Authenticatable. Но например в интерфейсе Authenticatable присутствует метод getAuthPassword, которые мной использоваться не будет, так как при авторизации через внешний сервис пароля нет. В таком случае как быть? Писать пустую функцию?
Илья
@iliyaZelenko
Aug 27 2015 14:18
Работаю с коллекцией. В чем разница методов toArray() и all()???
Soprun Vladislav
@vlsoprun
Aug 27 2015 14:19
@iliyaZelenko ?!
Илья
@iliyaZelenko
Aug 27 2015 14:20
Я когда использую all все нормально, а когда toArray, то посылается заголовок.
Oleg
@Malezha
Aug 27 2015 14:21
@iliyaZelenko в том, что all возвращает элементы как есть, а toArray пытается вернуть значение как массив.
Soprun Vladislav
@vlsoprun
Aug 27 2015 14:23
@iliyaZelenko [docs]
Там все есть про toArray
Илья
@iliyaZelenko
Aug 27 2015 14:23
Из-за toArray у меня отправляется заголовок и в body попадает символ 65279
Oleg
@Malezha
Aug 27 2015 14:26
@Furdarius да, подобное можно реализовать через кастомный драйвер, но это убьет возможность входить как обычно. По этому socialite возвращает данные пользователя и предоставляет возможность самим решить, как их сохранять.
JhaoDa
@jhaoda
Aug 27 2015 14:27
@Malezha у него аутентификация через стим, там социолайт не катит
Oleg
@Malezha
Aug 27 2015 14:28
@Furdarius мое решение (а я ой как не уверен, что оно верное) - создавать запись пользователя и вручную его авторизировать.
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 14:28
@Malezha @jhaoda Да, все верно. На текущий момент, я имею данные полученные через steam api и пытаюсь реализовать сохранение этого пользователя у себя в базе.
@Malezha Под "авторизовывать вручную" вы имеете ввиду прям руками ему в куки лезть? Или все-таки более автоматизированная авторизация средствами лары?
Oleg
@Malezha
Aug 27 2015 14:31
Auth::login($user); чем не подходит?
Maxim
@Big-Shark
Aug 27 2015 14:32
@artemiydeveloper ->whereRaw(DB::raw я думаю DB::raw не нужен
Oleg
@Malezha
Aug 27 2015 14:32
@Furdarius можно еще по ID - Auth::loginUsingId(1);
@Furdarius авторизация обычным способом нужна?
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 14:33
@Malezha Не нужна)
@Malezha Auth::login подходит, если писать свою реализацию UserContract
Oleg
@Malezha
Aug 27 2015 14:34
@Furdarius ну и в чем проблема?)
Роман Сохарев
@greabock
Aug 27 2015 14:35
в чем твоя проблема, бро?
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 14:35

Тогда, как я понимаю, лучшее решение, при авторизации только через Steam будет это:

@Malezha как я понял из исходников, мне нужно писать кастомные UserProvider и Authenticatable. Но например в интерфейсе Authenticatable присутствует метод getAuthPassword, которые мной использоваться не будет, так как при авторизации через внешний сервис пароля нет. В таком случае как быть? Писать пустую функцию?

@Malezha Просто выясняю архитектурные вопросы приложения
Хочу сделать более-менее качесвенный код
Роман Сохарев
@greabock
Aug 27 2015 14:39

Хочу сделать более-менее качесвенный код

друг, это декадентство... как показывает практика - всем насрать на твой код, пока он работает.

я тоже однажды хотел сделать все правильно...
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 14:40
@greabock Всем может быть и насрать, но, во первых, поддержка говнокода будет на порядок сложнее, во вторых все-таки почему то существуют best practice, паттерны и т.д.
Роман Сохарев
@greabock
Aug 27 2015 14:40
ну ладно, подловили - неоднажды
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 14:41
@greabock Да и вообще, это ж сообщество лары все-таки а не Joomla
Тут всем должно быть не насрать)
Maxim
@Big-Shark
Aug 27 2015 14:41
@Furdarius Ошибаешься)
Soprun Vladislav
@vlsoprun
Aug 27 2015 14:41
@Furdarius +1 в карму :smile:
Maxim
@Big-Shark
Aug 27 2015 14:41
@Furdarius знаешь как на ларе принято, поставил пакет, работает, если да, то забудь, и не трожь его больше)
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:42
Существует одна легенда
Роман Сохарев
@greabock
Aug 27 2015 14:42
@Furdarius друг мой, поверь: я не тот кому нужно объяснять, что такое шаблоны проектирования и выразительный код =))
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:42
давным-давно жил один программист
жил он в чёрном-чёрном городе
сидел за чёрным-чёрным компом
и хотел всё сделать правильно
Роман Сохарев
@greabock
Aug 27 2015 14:42
нееет
неееетт! Прекрати!
я больше не выдержу!
Soprun Vladislav
@vlsoprun
Aug 27 2015 14:43
xD
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:43
его звали @jhaoda старший
и вот однажды ему попался заказчик
заказчик задавал очень глупые вопросы
наш герой честно отвечал на них и делал всё правильно, писал идеальный код
symbios_zi
@symbiosss
Aug 27 2015 14:44
иии?
Роман Сохарев
@greabock
Aug 27 2015 14:44

его звали @jhaoda старший

^ подъ**б - 99lvl XD

Artemiy Ryabinkov
@Furdarius
Aug 27 2015 14:45
@greabock Нет-нет, я не пытаюсь объяснять ничего... Наоборот, сам пришел сюда за такими объяснениями.
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:45
но однажды его спросили почему запуская денвер в браузере показываются каталоги, где есть папки апп, паблик и проч
после этого наш герой сник
перестал писать идеальный код
а по всем вопросам посылает в документацию
на этом и кончается наша история
мораль такова
symbios_zi
@symbiosss
Aug 27 2015 14:46
читайте документацию!
Maxim
@Big-Shark
Aug 27 2015 14:46
А как же KISS?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:46
мораль: не задавате глупых вопросов, а читай документацию - тогда @jhaoda снова начнёт радоваться жизни, перестанет осыпать ссылками и благословит всех на идеальный код
Soprun Vladislav
@vlsoprun
Aug 27 2015 14:46
@SerafimArts :smile:
Artemy
@lartie
Aug 27 2015 14:47
@Big-Shark я боюсь его трогать уже.)
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 14:47
Кстати, если уж заговорили о Wamp и глупых вопросах...
Кто-нить на Windows с Vagrantom и homestead делал что-то?
symbios_zi
@symbiosss
Aug 27 2015 14:47
@artemiydeveloper доки читал с утра?
Maxim
@Big-Shark
Aug 27 2015 14:47
@artemiydeveloper ой да че ты очкуешь, я сто раз так делал.
Роман Сохарев
@greabock
Aug 27 2015 14:47
@symbiosss а ты?
Artemy
@lartie
Aug 27 2015 14:47
@symbiosss не понял.
Maxim
@Big-Shark
Aug 27 2015 14:47
@Furdarius да, я все это удалил, и стал более счастливым)
symbios_zi
@symbiosss
Aug 27 2015 14:47
@greabock laracasts утром в туалете смотрел на телефоне )
считается? :)
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:48
Ходит история, что существует ещё один программист, который нарушил законы мироздания и пишет идеальный код вопреки грусти @jhaoda
...но...
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 14:48
@Big-Shark Хах, теперь под Denwer'ом?
Maxim
@Big-Shark
Aug 27 2015 14:48
@Furdarius угу, почти)
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:48
но этого программиста - @sleeping-owl'а уже никто давно не видел, так что это просто легенда, забейте
Maxim
@Big-Shark
Aug 27 2015 14:49
@SerafimArts незабывай про @BlahBlag
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:49
@Big-Shark он и был тем человеком, который склонил @jhaoda к тёмной стороне =)
Maxim
@Big-Shark
Aug 27 2015 14:50
@SerafimArts Если верить легендам, он на питоне фреймверка за 2 дня написал который ларе не уступает, а даже превосходит ее.
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:50
@Big-Shark враки, питон не работает под денвером
Maxim
@Big-Shark
Aug 27 2015 14:50
@SerafimArts давно это было, сейчас всего и не упомнишь уже, стар я стал.
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:50
:D
symbios_zi
@symbiosss
Aug 27 2015 14:50
помогите пожалуйста. Как можно из реквеста получить данные всех полей формы?? В yii так можно, в ларавел есть что то подобное?
Maxim
@Big-Shark
Aug 27 2015 14:50
@SerafimArts он написал свой денвер с питоном и куртизанками
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:51
Maxim
@Big-Shark
Aug 27 2015 14:51
@symbiosss делаешь dump($request); А дальше регулярками уже
Роман Сохарев
@greabock
Aug 27 2015 14:51
@SerafimArts если мне не изменяет память - @blahblag и @jhaoda не пересекались вообще
Soprun Vladislav
@vlsoprun
Aug 27 2015 14:51
@symbiosss all
symbios_zi
@symbiosss
Aug 27 2015 14:51
:D
Роман Сохарев
@greabock
Aug 27 2015 14:51
а что если... это один и тот же человек! =0
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:51
@greabock не важно, смысл в красивых легендах
а не в правдивости оных
symbios_zi
@symbiosss
Aug 27 2015 14:52
@vlsoprun как пользоваться all?
JhaoDa
@jhaoda
Aug 27 2015 14:52
Щютники...
symbios_zi
@symbiosss
Aug 27 2015 14:52
@jhaoda как получить данные всех полей формы?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:52
Alexander
@Dualse
Aug 27 2015 14:54

@symbiosss Retrieving All Input Data

You may also retrieve all of the input data as an array using the all method:

$input = $request->all();

symbios_zi
@symbiosss
Aug 27 2015 14:54
@Big-Shark прикрутил таки closure table я. Щас вот с этим забабахаю и будет у меня крутая страничка категорий http://ilikenwf.github.io/example.html
тормозите посоны. Я же пошутил
Soprun Vladislav
@vlsoprun
Aug 27 2015 14:55
@symbiosss $data = $request->input(); или $data = $request->all();
Роман Сохарев
@greabock
Aug 27 2015 14:55
@Dualse как ты смеешь?! В присутствии @jhaoda дать прямой ответ, а не послать в доку!
Alexander
@Dualse
Aug 27 2015 14:55
@greabock Ну его послали в доки
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:55
котаны, у меня на руках есть Request, как с его помощью инициализирвать аппликуху и далее по роутам в контроллеры отправить?
Alexander
@Dualse
Aug 27 2015 14:55
А он все равно спрашивает)))
symbios_zi
@symbiosss
Aug 27 2015 14:55
@Dualse неправильно ты в доки шлешь
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:55
влом копаться в сырцах ларки, мб кто сталкивался
Alexander
@Dualse
Aug 27 2015 14:56
@symbiosss Так я вроде и не слал в них, а просто процитировал
Maxim
@Big-Shark
Aug 27 2015 14:56
@SerafimArts чаго?
symbios_zi
@symbiosss
Aug 27 2015 14:56
а как правильно Request::all() или $request->all()?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:57
<?php
$request = new Request();

// а дальше как послать его в роутинг?
Роман Сохарев
@greabock
Aug 27 2015 14:57

а как правильно Request::all() или $request->all()?

я давненько так не ржал =DDD

symbios_zi
@symbiosss
Aug 27 2015 14:58
@greabock :D
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:58
@symbiosss правильно Input::all()
!
Maxim
@Big-Shark
Aug 27 2015 14:58
@SerafimArts у меня только симфони под рукой) могу глянуть
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:58
@Big-Shark ну глянуть я и сам могу...
symbios_zi
@symbiosss
Aug 27 2015 14:59
@SerafimArts а в документации нет Input::all(), обманщик
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 14:59
@symbiosss есть
symbios_zi
@symbiosss
Aug 27 2015 14:59
@SerafimArts я не признаю v4
мамонт
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:00
в 5.1 тоже есть
глупыш
Alexander
@Dualse
Aug 27 2015 15:00
@symbiosss Я в 5.1 юзаю ::allI()
symbios_zi
@symbiosss
Aug 27 2015 15:00
где?
@Dualse алли новый метод?
gg wp ez
Alexander
@Dualse
Aug 27 2015 15:01
@symbiosss Переборщил
Главно смысл понятен
symbios_zi
@symbiosss
Aug 27 2015 15:01
@SerafimArts э чувак, в доках вроде как просил )
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:01
@Dualse забей, @symbiosss тоже в своё время с s переборщил...
symbios_zi
@symbiosss
Aug 27 2015 15:01
:D
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:02
@symbiosss в доках тоже есть http://laravel.com/docs/5.1/facades
Alexander
@Dualse
Aug 27 2015 15:02
@SerafimArts ))))
symbios_zi
@symbiosss
Aug 27 2015 15:06
@SerafimArts ну ладно, согласен. Для кого то это документация )
Oleg
@Malezha
Aug 27 2015 15:14
@SerafimArts ну index.php же
require __DIR__.'/../bootstrap/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
$response = $kernel->handle($request);
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:17
@Malezha я нашёл во внутренностях приложения
Alexander
@Dualse
Aug 27 2015 15:19
Кстати, у грибка на стриме кто-то говорил про интеграцию с 1С. Кто-то вообще пытался работать из лары с 1С?
Screamster
@Screamster
Aug 27 2015 15:20
ребят, а есть у лары аналог такого http://fuelphp.com/api/classes/Fuel.Core.Fieldset.html#add_model ?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:20
усё, всё работает, спасибо за помощь =)
http://docs.rudev.org/stream/bd762dcba2803310f50495d5f01c13a3
осталось почекать на утечки
Maxim
@Big-Shark
Aug 27 2015 15:20
я работал с коханы с 1с, считается?
Alexander
@Dualse
Aug 27 2015 15:20
Или проще Битрикс поставить?
@Big-Shark Ну если кохана == лара, то считается)
Maxim
@Big-Shark
Aug 27 2015 15:21
@Screamster ты обясни что это и для чего
@Dualse ну вообще у нас соап был, и там как бы вообще пофиг какой фреймверк
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:21
кохана == лара
но
кохана !== лара
как бы типизация динамическая и все дела +)
Screamster
@Screamster
Aug 27 2015 15:22
@Big-Shark
ой
сек =)) не привыкну к чату
@Big-Shark это типа генератор формы можно сделать из модели автоматом
$form = \Fieldset::forge('product');
$form->add_model($model)->populate($model, true);
незнаю правильно ли объяснил =))
точнее понятно ли
Maxim
@Big-Shark
Aug 27 2015 15:25
@Screamster генератор, или заполнения данных формы?
@Screamster ты формер смотрел?
Screamster
@Screamster
Aug 27 2015 15:26
@Big-Shark генератор но сразу с модели автоматически берет поля и делает форму
@Big-Shark нет, не смотрел, смотрел толкьо http://laravelcollective.com/docs/5.1/html
JhaoDa
@jhaoda
Aug 27 2015 15:26
@Dualse я работал
Maxim
@Big-Shark
Aug 27 2015 15:27
@Screamster вообще гугли формер, смотри его, и если буду вопросы еще, пиши)
JhaoDa
@jhaoda
Aug 27 2015 15:27
Но ковыряться в 1Совском формате это печаль, так что мы свою обработку сделали, она товары и заказы гоняет в zip'е, xml + картинки
Maxim
@Big-Shark
Aug 27 2015 15:28
@Screamster но наверное прям такого нет, просто в ларе модель ничего незнает о полях
Screamster
@Screamster
Aug 27 2015 15:28
@Big-Shark https://github.com/formers/former это оно? =)
Maxim
@Big-Shark
Aug 27 2015 15:29
@Screamster угу
Alexander
@Dualse
Aug 27 2015 15:30
@jhaoda Я про 1С знаю только в общих чертах, для чего она нужна, и что она становится все популярнее) Есть предположение, что интеграция с 1С может в будущем потребоваться. Поэтому думал, что почитать по этому вопросу
А так у меня в шкафу лежит лецензионная коробка с 1С Предприятие, а к ней 2 книжки прилогаются, но читать их как-то лень)
Maxim
@Big-Shark
Aug 27 2015 15:31
@Dualse тут многое зависит кто с той стороны быдет делать
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:32
нет, ларку нельзя юзать для вебсокет сервера
первое подсключение возвращает количество мемори: 10223616
255ый: 16252928
т.е. там где-то в недрах есть утечка памяти
Maxim
@Big-Shark
Aug 27 2015 15:34
@SerafimArts знаешь где? В логах дб)
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:34
нету их
т.к. нет подключения к дб
Maxim
@Big-Shark
Aug 27 2015 15:35
@SerafimArts ты вот мне что скажи, ты же с сокетами на ты? как думаешь, реально прифигачить советы с php server?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:35
всё, это мой косяк
поправил
первое подключение: 10223616
второе: 10747904
999ое 10747904
после получения данных соединение принудительно разрывается
если не разрывать, то на 255ом 16252928
Maxim
@Big-Shark
Aug 27 2015 15:36
@SerafimArts а если потом начинать разрывать по одному?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:37
память очищается
bearn666
@bearn666
Aug 27 2015 15:37
привет народ подскажите где можно посмотреть туториал как залить laravel проект на хостинг, где используется cPanel???
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:37
осталось понять как в контроллеры проикдывать инфу о соединении
чтоб можно было не только отвечать через return, но и посылать всем
плюс таймеры надо прокидывать
не, таймеры можно через DI вфигачивать
а вот инфу о соединениях...
надо чтоб у каждого контроллера было своё
т.е. для каждого соединения свои инстансы контроллеров, вот как-то так
SergeyMiracle
@SergeyMiracle
Aug 27 2015 15:41
Вопросик, так мы можем сразу несколько записей создать DB::table(’table’)->insert(массив с записями), а как это сделать с Eloquent? :smile:
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:42
так же
почти
SergeyMiracle
@SergeyMiracle
Aug 27 2015 15:42
что-то не получается так же
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:43
хм
SergeyMiracle
@SergeyMiracle
Aug 27 2015 15:44
я тоже задумался :smile:
Maxim
@Big-Shark
Aug 27 2015 15:44
@SerafimArts ты мне лучше скажи, удастся стартонуть файл вот так php -S 127.0.0.1:9000 test.php, и к немуже самому приконектится сокетами?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:46
да, конечно, в зависимости от реализации
у меня например через консоль всё это запускается
т.е. создал команду, которая стартует ws сервер и отправляет все запросы на папочку app/Ws/...
а там дальше так же как app/Http/...
Maxim
@Big-Shark
Aug 27 2015 15:47
@SerafimArts то есть в теории можно сделать допустим таку штуку
SergeyMiracle
@SergeyMiracle
Aug 27 2015 15:47
м, заработало, что за полтергейст :expressionless:
Maxim
@Big-Shark
Aug 27 2015 15:48
@SerafimArts ставим глобальный пакет, потом запускаем его с консоли, он запускает веб сервер, мы переходим на страничку, эта страничка по сокетам допустим скинурует чтото, на нашем компе, и выдает результат, верно?
@SergeyMiracle называется "вопрос в чат"
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:49
@Big-Shark ват? о_0
SergeyMiracle
@SergeyMiracle
Aug 27 2015 15:49
@Big-Shark :smile:
Maxim
@Big-Shark
Aug 27 2015 15:50
@SerafimArts просто прикол в чем, сервер который пашет от пхп работает от настроек кли, то есть не имеет таймаута) Ну и насколько я помню прав у него побольше)э
@SerafimArts а когда пакет через глобал ставишь, он сразу в консоли доступен
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:52
если прописана папка bin в path
Maxim
@Big-Shark
Aug 27 2015 15:52
@SerafimArts ну я думаю у многих прописана) у меня прописана)
@SerafimArts но в теории мы можем сделать вызов команду, которая чтото будет делать у нас на компе, и потом выдаст результат, в браузер, верно?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:54
мы и через http можем это сделать
Maxim
@Big-Shark
Aug 27 2015 15:56
@SerafimArts не, тут именно вопрос установки, или тебя просят сделать гит клон, настроить там разные права, и потом сделать нджинкс или апатч конфиг это одно, и совсем другое когда ты поставил пак, а потом когда тебе нужно посмотреть кое какую инфу о системе, репах и тд, ты просто вызываешь команду в консоли
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:56
эм
по-моему это очевидно =)
Maxim
@Big-Shark
Aug 27 2015 15:56
Что очевидно?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:56
т.е. я даже отвечать не буду
очевидно что можно запустить repl
Maxim
@Big-Shark
Aug 27 2015 15:57
@SerafimArts вот мне допустим этот пакет понравился https://github.com/alberthier/git-webui
@SerafimArts а репл тут при чем?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 15:58
ты говоришь о репле жеж
REPL (Read-eval-print loop)
Maxim
@Big-Shark
Aug 27 2015 16:00
@SerafimArts нее, ты глянут то что я тебе скинул?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:00
nfv rfrbt-nj rfhnbyrb b crhbys
тьфу
мельком
гит какой-то
+)
Maxim
@Big-Shark
Aug 27 2015 16:01
@SerafimArts заходи в папку с гит репозиторием, пишем git webui, и у нас открывается страничка с историей комитов, и прочим, вобщем полноценое гит приложение, только в браузере, и запучкаемое из консоли 1 командой
@SerafimArts пример, заходим в любой проект где есть композер, пишем команду ...., и у нас открывается страничка где в виде майндмэп на жс, показаны связи используемых и загруженых пакетов.
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:07
и?
блин, в пыхе интерфейсы не могут имплементить другие =(
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:20
фак, ещё одна проблема
в симфонийском реквесте намертво зашита схема
http или https
о, наследование
=)
Roman Tsiupa
@dracony
Aug 27 2015 16:24
"блин, в пыхе интерфейсы не могут имплементить другие =("
интерфейс нигде не может ничего имплементировать
зато
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:24
в java может
Roman Tsiupa
@dracony
Aug 27 2015 16:24
он может расшырять интерфейс
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:24
и даже экстендить
и даже реализовывать методы
=)
Roman Tsiupa
@dracony
Aug 27 2015 16:24
в пхп как раз екстенжить и может
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:25
interface SomeInterface extends AnyClass?
Roman Tsiupa
@dracony
Aug 27 2015 16:25
@SerafimArts я о теории ООП а не о частной имплементации в одном языке
@SerafimArts да
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:25
хм
Roman Tsiupa
@dracony
Aug 27 2015 16:25
ну класс он не может расшырить
толко другой интерфейс
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:25
ааа
Roman Tsiupa
@dracony
Aug 27 2015 16:25
interface B extends A
class C implements B
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:25
всё
тогда может имплементить
только называется это экстендс
Roman Tsiupa
@dracony
Aug 27 2015 16:26
когда в чат лары не загляну всегда первый вопрос "я не читал мануал по пхп"
не может
имплементация это когда есть код
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:27
имплементс дословно: соглашение на реализацию
да, ты прав
Roman Tsiupa
@dracony
Aug 27 2015 16:27
внизапно))
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:27
что-то мне просто никогда не требовалось вкручивать наследование интерфейсов
а тут решил разделить интерфейс и контракт эвент лупа
=)
Alexey
@Butochnikov
Aug 27 2015 16:29
@dracony ну "расшИрять" же
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:30
@dracony а что, у пыха есть мануал? o_0 я думал только у ларки он есть...
Roman Tsiupa
@dracony
Aug 27 2015 16:36
)))
KorwinArekin
@KorwinArekin
Aug 27 2015 16:45
Приветствую, всех присутствующих
JhaoDa
@jhaoda
Aug 27 2015 16:48
@KorwinArekin и они тебя тоже тем же самым по тому же месту
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:48
@KorwinArekin йоу, вазап нигга? +)
JhaoDa
@jhaoda
Aug 27 2015 16:49
@SerafimArts не канонично
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:49
хм
чтож делать тогда?
JhaoDa
@jhaoda
Aug 27 2015 16:49
@SerafimArts исправить на «возап нига»
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:50
/fixed
thx so much
KorwinArekin
@KorwinArekin
Aug 27 2015 16:50
Можно обратиться за помощью?... Предупреждаю.. в вебе и линухах пока нуб полный...
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:51
тогда нельзя
JhaoDa
@jhaoda
Aug 27 2015 16:51
@KorwinArekin а если скажем, что нельзя?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:51
:D
JhaoDa
@jhaoda
Aug 27 2015 16:51
@SerafimArts ну ты так сразу-то
KorwinArekin
@KorwinArekin
Aug 27 2015 16:51
но оч хочется научиться
JhaoDa
@jhaoda
Aug 27 2015 16:51
@SerafimArts нежнее надо
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:51
не часто выпадает такой шанс =)
JhaoDa
@jhaoda
Aug 27 2015 16:51
@KorwinArekin ты спрашивай, без долгих предисловий
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 16:51
так что не выдержал
KorwinArekin
@KorwinArekin
Aug 27 2015 16:51
=)))
Поставил Дебиан 7 64бит.. Выполнил все пункты установки Laravel...
JhaoDa
@jhaoda
Aug 27 2015 16:51
Время, как известно, бабки
KorwinArekin
@KorwinArekin
Aug 27 2015 16:52
А где выполнять команды настройки невкурю никак (
JhaoDa
@jhaoda
Aug 27 2015 16:52
@KorwinArekin а веб-сервер поставил?
@KorwinArekin про какие команды настройки речь?
KorwinArekin
@KorwinArekin
Aug 27 2015 16:52
при установке дебиана галочку ставил "Web-сервер" ^_^
установить ключ шифрования сессий и кук ... artisan-командой key:generate
JhaoDa
@jhaoda
Aug 27 2015 16:53
@KorwinArekin а где у тебя файлик asrtisan лежит? В корне проекта, верно
Значит, где надо команду выполнять?
KorwinArekin
@KorwinArekin
Aug 27 2015 16:54
ок.. спасибо)
KorwinArekin
@KorwinArekin
Aug 27 2015 17:01
блин.. походу не правильно понял
korwin@WEB:~$ cd /home/korwin/laravel
korwin@WEB:~/laravel$ artisan key:generate
bash: artisan: команда не найдена
не то? у кого терпение есть?)))
JhaoDa
@jhaoda
Aug 27 2015 17:02
@KorwinArekin ты сначала найди, где у тебя файл artisan
Oleg
@Malezha
Aug 27 2015 17:02
@KorwinArekin php artisan
JhaoDa
@jhaoda
Aug 27 2015 17:02
@KorwinArekin ну ты жжошь, блин
KorwinArekin
@KorwinArekin
Aug 27 2015 17:03
/home/korwin/laravel
JhaoDa
@jhaoda
Aug 27 2015 17:03
Хотя... если поставить на файл, то и так заработает
KorwinArekin
@KorwinArekin
Aug 27 2015 17:03
конешн жгу.. мне это все новое настолько ... что абзац
Oleg
@Malezha
Aug 27 2015 17:03
@jhaoda не заработает
JhaoDa
@jhaoda
Aug 27 2015 17:03
@Malezha вай?
Oleg
@Malezha
Aug 27 2015 17:04
Потому что будет искать в /bash/bin и в прочих местах
Нужно ./artisan
JhaoDa
@jhaoda
Aug 27 2015 17:04
Она каааак...
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 17:05
эм
./artisan - это на исполнение запустить
KorwinArekin
@KorwinArekin
Aug 27 2015 17:05
/home/korwin/laravelудалось
Oleg
@Malezha
Aug 27 2015 17:05
Ну а мы как хотим?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 17:06
т.к. там прописан путь к интерпретатору - оно запустится
но можно и без этого обойтись
php artisan
тогда интерпретатор запускается явно
KorwinArekin
@KorwinArekin
Aug 27 2015 17:06
korwin@WEB:~/laravel$ php artisan key:generate
вот так вышло ^_^
Oleg
@Malezha
Aug 27 2015 17:06
Оно равносильно по сути своей, все равно через cli запустится
KorwinArekin
@KorwinArekin
Aug 27 2015 17:06
спасибо)
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 17:07
@Malezha не равносильно, когда на серваке 100500 версий пыха
=)
Oleg
@Malezha
Aug 27 2015 17:09
@SerafimArts ну да, если указывать принудительно, то все верно. Так действительно больше контроля, но часто сейчас стоят несколько версий?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 17:09
Да, очень часто
и на серверах и на шаредах
KorwinArekin
@KorwinArekin
Aug 27 2015 17:10
а под линукс у ларавел есть графический интерфейс?.. а то как-та не сказано где его запустить
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 17:10
@KorwinArekin что ты подразумеваешь под графическим интерфейсом?
ты видел когда-нибудь графический интерфейс у boost или .net? =)
JhaoDa
@jhaoda
Aug 27 2015 17:11
@SerafimArts матерные слова какие-то :)
Oleg
@Malezha
Aug 27 2015 17:12
@SerafimArts но если я не ошибаюсь, то #!/usr/bin/env NAME ищет симлинк в $PATH с названием NAME, что аналогично NAME script.
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 17:14
ага, только в подавляющих случаях там какой-нибудь древний php53 прописан =)
в патх
KorwinArekin
@KorwinArekin
Aug 27 2015 17:14
аа.. эт я тупанул.. неизвестный мне доселе файловый менеджер воспринял как некую спец оболочку .. стучусь головой аб стол .. пойду спать лучше а то 3 часа ночи уже)
извините за беспокойство
Oleg
@Malezha
Aug 27 2015 17:33
@SerafimArts ну на что ведет симлинк php, то и получим :D
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 17:35
чит
я в баш профайл прописывал всегда алиас
правда композер в скрипт секциях всё равно игнорил их
приходилось отдельно прямой путь писать до бинарника
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 17:43

Если у кого есть актуальные, на текущий момент, статьи на тему Repository в ларе, скиньте, пожалуйста, буду очень благодарен.
Желательно еще приложить ваше мнение на тему оправданности использования репозиториев...
Пока нашел вот это https://laracasts.com/discuss/channels/general-discussion/repositories-and-models
И вот это http://slashnode.com/reusable-repository-design-in-laravel/
Но во второй мне совершенно не нравится абстрактный класс репозитория и использование call_user_func_array. Он же по сути проксировал методы Eloquent...

Вообщем, каким будет наиболее правильное архитектурное решение?

JhaoDa
@jhaoda
Aug 27 2015 17:46
@Furdarius у тебя обе ссылки одинаковые
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 17:47
@jhaoda Прошу прощения. Исправил.
JhaoDa
@jhaoda
Aug 27 2015 17:51
@Furdarius использование репозиториев оправдано. Но сделать хороший репозиторий — большое дело.
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 17:52
можно поупарываться по ddd
=)
JhaoDa
@jhaoda
Aug 27 2015 17:52
@SerafimArts репы к DDD не относятся
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 17:53
разве это значит, что нельзя поупарываться по ddd?
Artemy
@lartie
Aug 27 2015 17:53
А можно как то обновить csrf токен?
А то мне через некоторое время работы в консоль пишет 404 на запросы
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 17:54
\Session::regenerateToken()
ну или через объект, а не фасад
Artemy
@lartie
Aug 27 2015 17:55
@SerafimArts не, надо на странице у юзера
JhaoDa
@jhaoda
Aug 27 2015 17:55
@artemiydeveloper а 404 к токену как относится?
Artemy
@lartie
Aug 27 2015 17:55
@jhaoda ну он истекает как я понимаю и что то не так становится.
@jhaoda наверное
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 17:55
@jhaoda Во второй статье пример репозитория, который, имхо, может быть довольно удобно использовать из-за кучи синтаксического сахара и прокированных методов типа find. На твой взгляд, это хорошая реализация?
И еще раз попрошу по поводу чтива на тему Repository in Laravel5, актуальные на текущий момент.
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 17:55
ну если ошибка с токеном, просто релоад страницы можно сделать
JhaoDa
@jhaoda
Aug 27 2015 17:55
@artemiydeveloper плохо понимаешь. http://laravel.su/articles/simple-exception-handling
@artemiydeveloper основная мысль: протух токен — протухла сессия
Надо не токен обновлять, а сессию.
Опять же, я так и не понял, как 404 относится к токену
Сама ларавель на протухший токен реагирует совсем не 404-й ошибкой
Artemy
@lartie
Aug 27 2015 17:58
@jhaoda в общем у меня выполняется скрипт, который делает запросы постоянно на сервер и через некоторое время такой работы мне в консоль пишется 404
@jhaoda я подумал, что может быть токен устаревает.
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 18:00

@vanchelo The page you were looking for doesn't exist.

You may have mistyped the address or the page may have moved.

JhaoDa
@jhaoda
Aug 27 2015 18:00
@Furdarius трэш это всё. Во всех этих хипстерских статейках пишут про all, find и прочие стандартные методы. И крайне редко пишут, как вызывать один метод, но с загрузкой разных связей, как безболезненно включить-выключить withTrashed() и так далее...
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 18:00
опа
@SerafimArts ))
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 18:01
@vanchelo Ааа, да читал. Ее же даже на хабре переводили.
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 18:01
у шона сайт не на ларке, а не рельсах
чуите подвох? =)
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:01
даааа
@Furdarius попробуй почитать про этот паттерн не дамая о ларавел
JhaoDa
@jhaoda
Aug 27 2015 18:02
@artemiydeveloper ты проверь, а не думай
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:03
к примеру симфони из коробки генерит репозитории для сущностей
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 18:03
а, не
это не рельсы
это эрланг
о_0
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:03
фигасе
а что за фрейм?
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 18:03
на эрланге я только один знаю
n2o
слизанный с нитро
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:03
)
Kirill Nesmeyanov
@SerafimArts
Aug 27 2015 18:04
а, ну ясно
это даже не свой
а шаблонный типа вордпресса
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 18:05
@jhaoda Ведь, репозиторий только еще один уровень абстракции между базой и контроллером, разве внутри метода репозитория, такими вещами как загрузка разных связей, не должна заниматься сама Eloquent в нашем случае?
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:05
не, репозиторий для абстрации над хранилищем, я думаю
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 18:05
@vanchelo Ну да, это имею в виду
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:05
а юзать ты его можешь не только в http приложухах
но и в cli
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 18:06
@vanchelo Хмм, интересно
JhaoDa
@jhaoda
Aug 27 2015 18:06
@Furdarius я говорю про ОДИН метод, который надо вызывать с РАЗНЫМ набором связей
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 18:06
@jhaoda А приведи пример, пожалуйста, я не понимаю.
JhaoDa
@jhaoda
Aug 27 2015 18:08
Чо непонятного? Что-то типа findByName('Vasya') и findByName('Vasya', ['images', socials])
В первом случаем мне не нужны связи images и socials
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:09
а так незя? findByName('Vasya')->withImages()
JhaoDa
@jhaoda
Aug 27 2015 18:09
@vanchelo там уже коллекция, какой with-то?
butschster
@butschster
Aug 27 2015 18:09
Всем привет. Набросал на досуге небольшой пакет Laravel-api, за основу которого взял модуль из KodiCMS. https://github.com/KodiCMS/laravel-api Буду рад ,если кто его протестирует, хотелось бы его развивать
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:10
@jhaoda так ты можешь вернуть что угодно
зачем упираться обязательно в коллекцию?
JhaoDa
@jhaoda
Aug 27 2015 18:10
@vanchelo затем, что иначе смысл теряется
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:10
и опять таки, ты можешь унаследоваться от коллеции
JhaoDa
@jhaoda
Aug 27 2015 18:10
Если нужны связи, то пиши with()->get(), не нужны связи — пиши обязательно get(). В чем прикол-то?
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:11
можно сделать так что get писать не придется
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 18:11
@jhaoda Хмм, да, действительно. Как ты считаешь, для начал, можно за основу брать пример из http://slashnode.com/reusable-repository-design-in-laravel/
?
JhaoDa
@jhaoda
Aug 27 2015 18:11
@vanchelo вот я и говорю, что как дело доходит боевого применения, начинаются проблемы
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:12
можно магию заюзать
JhaoDa
@jhaoda
Aug 27 2015 18:12
А потом ещё в одном месте надо сортировать по такому полю, а в другом месте — по другому полю
А потом ещё что-то... а потом... и пинцет — привет, Франкенштейн!
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:13
да, есть такая беда с репами
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 18:13
@jhaoda как ты их сам используешь?
@jhaoda Хмм, да, действительно. Как ты считаешь, для начал, можно за основу брать пример из http://slashnode.com/reusable-repository-design-in-laravel/
JhaoDa
@jhaoda
Aug 27 2015 18:13
@Furdarius у меня как раз Франкенштейн
И он мне не нравится
@Furdarius нечего там брать за основу
Ибо основу эту можно самому за 5 мину написать
Brezhnev Ivan
@vanchelo
Aug 27 2015 18:14
command bus и cqrs
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 18:14
@jhaoda Если не сложно, кинь пример своей реализации одного из таких методов, где приходиться тянуть relations? Хочу посмотреть, для развития
JhaoDa
@jhaoda
Aug 27 2015 18:16
@Furdarius мне неохота запускать шторм, рабочий день закончился
Artemiy Ryabinkov
@Furdarius
Aug 27 2015 18:16