
D'
05.09.2016
10:13:00
Выпей валерьянки прежде чем читать про такое

Alejandro
05.09.2016
10:38:33
та че в шоке
видел, забыл просто, хз 2 месяца назад учил, читал всю доку, но забыл, так как не пользовался

Дмитрий Джек
05.09.2016
11:18:36
Привет, как в ларе выполнить такой запрос?
DELETE clone FROM `ippsus` as me, `ippsus` as clone WHERE me.`ippsu_type_id` = clone.`ippsu_type_id` AND me.`client_id` = clone.`client_id` AND clone.hand_made = 0 AND me.`id` < clone.`id`

Google

Виталий
05.09.2016
11:21:10
FROM ippsus as me, ippsus as clone
Упрлсштле?

Alejandro
05.09.2016
11:21:19
щячло

Дмитрий Джек
05.09.2016
11:22:47
кароч дубли удаляю, подключиться к мускулу напрямую нету возможности, извращаюсь..

Виталий
05.09.2016
11:24:09
а почему не сделать уникальный ключ, чтобы потом дубли не удалять?

Евгений
05.09.2016
11:26:02

Виталий
05.09.2016
11:26:17
Ну если уж ты костыли начал пилить, то DB::raw(твой запрос)

Евгений
05.09.2016
11:26:20
Но мне ваще насрать, не мое дело ?

Дмитрий Джек
05.09.2016
11:26:46
DB::raw пробовал, не работает

Евгений
05.09.2016
11:26:52
??
Наверно ларавель сломался

Alejandro
05.09.2016
11:27:09
))00)

Евгений
05.09.2016
11:27:11
Напиши тейлору, пусть чинит

Google

Alejandro
05.09.2016
11:27:33
Тейлору Свифт?

Евгений
05.09.2016
11:27:44
Я пробовал пхп, но чот не работает у меня

Виталий
05.09.2016
11:28:03
тогда DB::delete()
Если уж и он не работает, то тут дело в твоём запросе а не в ларе)
Попробуй DELETE на SELECT поменять и посмотреть что вообще вернёт мускуль

Дмитрий Джек
05.09.2016
11:32:14
DB::raw возвращает object(Illuminate\Database\Query\Expression)#351 (1) { ["value":protected]=> string(184) "DELETE clone FROM ippsus as me, ippsus as clone WHERE me.ippsu_type_id = clone.ippsu_type_id AND me.client_id = clone.client_id AND clone.hand_made = 0 AND me.id < clone.id1" } и больше ниче не происходит, c delete() тоже не проканало..
запрос рабочий, на локалке норм отрабатывает..
бля... вот чё мне надо было DB::unprepared()

Евгений
05.09.2016
11:34:47
Отрицательный опыт - тоже опыт
блин, я опять туплю с запросом. Как получить отзывы только активных организаций?
есть Firm и есть Review, у one2many
у орг статус 1/0
надо получить все отзывы у которых организации имеют статус 1

(;¬_¬)
05.09.2016
12:42:01
дык... Firm::where('status',1)->with('Review')->get() ?
не?

Евгений
05.09.2016
12:42:13
Не

Alejandro
05.09.2016
12:42:17
джойн подавай

Евгений
05.09.2016
12:42:18
Не заведения с отзывами

(;¬_¬)
05.09.2016
12:42:19
ты хочешь сразу запросы?

Евгений
05.09.2016
12:42:22
А отзывы

Alejandro
05.09.2016
12:42:22
через ревью

Google

Евгений
05.09.2016
12:42:37
Ну в ларе ж наверно есть магия
Типа whereHas?
Ща комп перезагружаться ушел, после этого whereHas гляну, может оно то что надо

(;¬_¬)
05.09.2016
12:43:42
Eager-loading.
$comments = News::find(123)->with('comments', function ($query) {
$query->where('trashed', '<>', 1);
});
вот так, только наоборот

Евгений
05.09.2016
12:44:18
Тут у конкретной новости
Комменты
А мне все

(;¬_¬)
05.09.2016
12:44:27
ыдк ты опусти find()
Review::with('Firm',function($query){$query->where('status',1)})->get();
не?

Евгений
05.09.2016
12:45:09
Во, наверно

Евгений
05.09.2016
12:45:19
Ща комп включиться скоро)

(;¬_¬)
05.09.2016
12:45:22
=)

Евгений
05.09.2016
12:45:35
Задолбал синий экран, тупая венда

(;¬_¬)
05.09.2016
12:46:18
еще вот так предлагают
You can do simply in your eloquent model file. do like this :
public function comments_with_deleted()
{
return $this->belongsTo('Comments', 'id')->where('deleted', 1);
}
public function comments()
{
return $this->belongsTo('Comments', 'id');
}
call like this :
// for show comments with deleted
$comments = News::find(123)->with('comments_with_deleted');
// for show comments without deleted
$comments = News::find(123)->with('comments');
хотя не исключено что не то я тебе советую =) и надо фигачить каким-нибудь джойном

Евгений
05.09.2016
12:48:40
все таки whereHas
подошло мне
$reviews = Review::whereHas('Firm', function($query){$query->active();})->active()->orderBy('date', 'desc')->take(50)->get();

Google

(;¬_¬)
05.09.2016
12:50:00
о, внезапно...
круто
буду знать, что и такая фигня есть

Евгений
05.09.2016
12:50:57
хз, может это не тру метод

D'
05.09.2016
12:51:35

Евгений
05.09.2016
12:51:44
вот и славненько

?? Vladimir
05.09.2016
13:16:49
Есть аналог функции whereIn который отбирает предметы не по строгому совпадению элементов массива, а по вхождению подстроки?

D'
05.09.2016
13:18:08
нет

?? Vladimir
05.09.2016
13:18:49

Admin
ERROR: S client not available

KarmaBot
05.09.2016
13:18:50
Спасибо (+1) для @Denormalization принято!
Текущая карма +24

D'
05.09.2016
13:19:05
Вручную через LIKE собирай

?? Vladimir
05.09.2016
13:21:09
Так и делаю

Alejandro
05.09.2016
14:08:57
почаны
как мне послать нафиг юзера, с экшнов на которых ему нельзя находится так как забанен
как это делается вообще, типа он заходит куда-то где можно только залогиненым можно находится, а он забанен, что делать в таком случае

Евгений
05.09.2016
14:12:42
policy

Alejandro
05.09.2016
14:12:57
полицай. хммм

Евгений
05.09.2016
14:13:20
https://laravel.com/docs/5.3/authorization#writing-policies
так лучше?

Google

Alejandro
05.09.2016
14:13:34
та нее, я всмысле, агаа.. надо смотреть

D'
05.09.2016
14:13:35
Так middleware же
закрывай роуты и все

Alejandro
05.09.2016
14:13:52
та да, я так и сделал
но дело в том что я хочу сказать пользователю что он забанен
а как?
что мне отправлять
abort(403, 'вы забанены) думаю неправильно?

D'
05.09.2016
14:14:21
Ну когда шлешь его из middleware - шли с сообщением

Alejandro
05.09.2016
14:14:41
я спрашиваю именно каким методом лучше всего реализовать

D'
05.09.2016
14:14:58
Ну зависит от того что тебе нужно в итоге
Можешь хоть abort юзать
Если тебя это устроит

Alejandro
05.09.2016
14:15:11
перенаправлением назад? остановкой на этос странице права результатом будет вы забанены не знаю как лучше

Vanya
05.09.2016
14:15:35
Кого ебут забаненые юзеры, хоть рика ролла им возвращай

Alejandro
05.09.2016
14:15:42
ыы

D'
05.09.2016
14:15:45
редиректи на главную с ->withMessage и все

Alejandro
05.09.2016
14:16:15
не редиректить не хочу
а что если отправить ему респонс с мидлвара? как это сделать:?
в доку... ушел
Да там вроде можно просто return view()

Евгений
05.09.2016
14:18:24
смс ему отправь