@laravel_pro

Страница 1535 из 2014
Andrey
27.06.2018
18:44:20
возьми и проверь если не уверен

Игорь
27.06.2018
18:44:41
Google
Vadim
27.06.2018
18:45:12
PhpStorm
Import class?

Игорь
27.06.2018
18:45:22
Import class?
а как правильно написать?

Vadim
27.06.2018
18:45:53
Игорь
27.06.2018
18:45:59
((

Мышкой?
Я не могу понять что делает этот Hash::make(), потому что он спрятан за фасадом. Как найти какой класс принадлежит этому методу? и сам метод

Игорь
27.06.2018
18:54:31
Например, посмотреть в пакете.
Ну вот я нашел какой-то класс, но там нет метода make()

https://laravel.com/api/5.6/Illuminate/Support/Facades/Hash.html

VA
27.06.2018
18:54:43
От юзера не оно, у меня вот такая выборка `Image::notviewed() ->notmine() ->priority() ->available() ->active() ->whereHas('user', function($query) use ($gender) { $query->where('gender', $gender); }) ->inRandomOrder() ->take(2) ->get();`
Так, если я правильно понимаю, то на image должен быть какой-то user_id. Коллекцию и так получаешь, и не важно, позьмешь ты 2 записи, или двадцать. по этому я делал бы так: $images = Image::notviewed() ->notmine() ->priority() ->available() ->active() ->whereHas('user', function($query) use ($gender) { $query->where('gender', $gender); }) ->inRandomOrder() ->take(20) ->get(); $images->sortBy('user_id'); $first_image = $images->first(); $second_image = $images->last();

Игорь
27.06.2018
18:55:23
Vadim
27.06.2018
18:55:33
Нормально
Что делает интерпретатор, когда не может найти метод?

Игорь
27.06.2018
18:55:48
или invoke

Google
Vadim
27.06.2018
18:56:52
или invoke
Читаем доку!

Игорь
27.06.2018
18:58:24
Что делает интерпретатор, когда не может найти метод?
Если я прописываю этот класс в IDE, то он ругается, что множественное определение класса (видимо один от ide_helper, второй от фасадов), как я понимаю

Игорь
27.06.2018
18:59:27
Ладно, переживу как-нибудь. Не все сразу начинающему в первые три дня на ларавел

Игорь
27.06.2018
18:59:42
Все. Вопрос снят.

Alexander⁴
27.06.2018
18:59:52
ide-helper:generate, ide-helper:meta запускали?

ок

Игорь
27.06.2018
19:00:09
Конечно! запускал

Alexander⁴
27.06.2018
19:00:21
тогда странно

Игорь
27.06.2018
19:01:09
Я еще дописываю сервис, поэтому не смогу проверить будет ли ошибка. Уверен что код рабочий, просто бесит, что ide красным подчеркивает мой UserService

тогда странно
В ide_helper запись есть class Hash extends \Illuminate\Support\Facades\Hash {}

VA
27.06.2018
19:03:30
проблема в том, что у самого фасада нет никаких методов, кроме getFacadeAccessor

Vadim
27.06.2018
19:04:16
Андрей, предполагалось, что он сам до этого дойдёт (

Игорь
27.06.2018
19:04:22
я нашел метод

public function make($value, array $options = []) { return $this->driver()->make($value, $options); }

VA
27.06.2018
19:04:39
а тот метод, что вызывается - это инстанциирование класса, полученного по аксесору в DIке, и использование метода уже не на фасаде, а на инстансе не-фасадного класса

по этому-то и подчеркивает

Игорь
27.06.2018
19:05:56
Я не могу понять какой внутри в глубине используется метод, можно ли его заменить bcrypt

Google
Игорь
27.06.2018
19:06:32
public function getDefaultDriver() { return $this->app['config']['hashing.driver'] ?? 'bcrypt'; } видимо здесь

То есть если я не меняю дефолтный метод, то выбирается метод bcrypt, как я понимаю

.....\HashManager, наверное?

Игорь
27.06.2018
19:09:30
Другими словами, технически между методами Hash::make($password) и bcrypt($password) нет никакой?

Как считаете, есть ли смысл ссылку (токена) проверки адреса электронной почты делать недействительной по прошедствии какого-то времени? Если да, то почему?

Yevgen
27.06.2018
20:08:24
Доброй ночи. Увжааемые подскажите, пожалуйста-посылаю из формы ajax, после его успешного выполнения делаю редирект страницы. Как я могу из JS сделать flash сообщение на новой странице?

Игорь
27.06.2018
20:08:33
А если подумать?
Так вот сижу и думаю. Единственное, что приходит в голову, что если ссылка так и останется неактивированной, а почту угонят, то могут активироваться не те люди. Ну и даже если так, то что? Ну зарегистрируются другие, какая разница. А У Вас какие соображения?

Игорь
27.06.2018
20:11:37
придет тз где напишут надо ограничить- окай
У меня нету ТЗ )) Я сам для себя делаю простой пробный проект на Ларавел. Но хочется по феншую

Если не ошибаюсь, то в Yii ссылка на проверку генерировалась с временнОй меткой. Или это была ссылка на смену пароля. Не помню уже. Вот и ищу аргументы

dev
27.06.2018
20:13:22
хочешь делай привязку

не хочешь не делай

хочешщь привяжи еще к ИПадрес или браузеру или все вместе

обязательно заставь юзера придумать пароль от 15-до 16 символов

Google
Игорь
27.06.2018
20:13:46
То есть в принципе, это на безопасность не влияет, так?

dev
27.06.2018
20:13:54
с наличием всех расскладок

:)

Игорь
27.06.2018
20:14:20
:)
)) я без фанатизма

Alexander
27.06.2018
20:42:45
Посоветуйте пожалуйста какие-то компоненты для реализации загрузчика изображений. Нужен мультиселект и выбор главного изображения

Сергей
28.06.2018
05:46:04
Есть какая-то принципиальная разница между использованием hasOne('ModelName') и ModelName::find($this->SomeID)?

Admin
ERROR: S client not available

Igor
28.06.2018
05:47:57
Есть какая-то принципиальная разница между использованием hasOne('ModelName') и ModelName::find($this->SomeID)?
Есть. В первом случае у тебя отношение, в другом случа просто выборка из таблицы и N+1 проблема

Kirill
28.06.2018
05:51:44
поясните плз как работает createOrupdate или как заюзать createMany вместе с on duplicate key ignore. Необходимо создавать, если нет записи, либо обновлять им updated_at либо игнорить на карйняк ?

Сергей
28.06.2018
05:52:33
Есть. В первом случае у тебя отношение, в другом случа просто выборка из таблицы и N+1 проблема
Длинные связки джойнятся на уровне SQL при использовании связей?

Kirill
28.06.2018
05:53:28
Первый параметр принимает where, второй update значения
а если записей нет, тогда создастся с параметрами where ?

Oleg
28.06.2018
05:53:45
Могу ошибаться конечно

Но вроде бы да

Загляни в этот метод

Aibek
28.06.2018
05:54:25
а если записей нет, тогда создастся с параметрами where ?
со всеми параметрами, два массива merge в один

Kirill
28.06.2018
05:54:44
благодарю

Igor
28.06.2018
06:11:27
Сергей
28.06.2018
06:12:47
нет, если хочешь джойнить - делай ручками.
Тогда в чем заключается проблема N+1?

Google
Igor
28.06.2018
06:14:00
Тогда в чем заключается проблема N+1?
ну когда ты у каждого объекта вызываешь вместо отношений find у тебя на каждый объект будет нновый запрос

Сергей
28.06.2018
06:16:54
А то есть если я иду по списку комментариев и вызываю $comment->Post->Author у меня не происходит ннскольких запросов к таблице Post?

Igor
28.06.2018
06:18:32
ну в случае find идут несколько запросов на итерацию цикла а в случае отношений можно их загрузить жадной загрузкой

https://laravel.com/docs/5.6/eloquent-relationships#eager-loading https://laracasts.com/search?q=eager+loading

[Anonymous]
28.06.2018
06:34:21
Подскажите, как можно взять сущность с 3 связанными сущностями.. То есть допустим 10 постов и взять 3 комента для каждого поста

Vladimir
28.06.2018
06:41:59
Post::with(‘comments’ => function($q){$q->take(3);})->paginate(10)

[Anonymous]
28.06.2018
06:42:28
Post::with(‘comments’ => function($q){$q->take(3);})->paginate(10)
так получается всего 3 записи, а надо для каждого поста по 3

Aibek
28.06.2018
06:42:52
лимит для связей не работает

Vladimir
28.06.2018
06:42:58
Paginate(10) это 10 постов

[Anonymous]
28.06.2018
06:43:33
лимит для связей не работает
и как решить эту проблему?

Paginate(10) это 10 постов
при чем здесь 10 постов? надо 3 комента для каждого поста взять, этот же вариант берет 3 комента всего

select * from `comments` where `comments`.`post_id` in ('4', '5', '50') limit 3

то есть такой запрос делает

а в бд это вообще реально 1 запросом сделать?

Vladimir
28.06.2018
06:46:24
Ну замени пагинайт на гет получишь все посты с тремя комментами в каждом

[Anonymous]
28.06.2018
06:46:48
Ну замени пагинайт на гет получишь все посты с тремя комментами в каждом
да не будет там 3 комента в каждом, в этом и проблема

Страница 1535 из 2014