
Adel
10.01.2017
18:28:15
Заведи массив с турами. и раскидай матчи по нему

root
10.01.2017
18:29:02
Вопрос уже решён

Alexandr
11.01.2017
08:59:12
У Тейлора (создателя Laravel) появился свой блог: https://medium.com/@taylorotwell

Adel
11.01.2017
14:44:03
Вчера читал :) он игрушку новую нашел. мерять комплексити кода

Google

Adel
11.01.2017
14:44:31
Самый длинный метод в ларке - 13 строк.
пожалуй самое прикольное из его поста

Alexander
12.01.2017
14:50:09
Всем привет!
Подскажите почему updateOrCreate всегда отрабатывает как Create?
Есть две модели, связь однин к одному.
Два метода в модели:
public function partnerProperties() {
return $this->hasOne('App\Models\Partner');
}
public function savePartnerProperties($data)
{
$this->partnerProperties()->updateOrCreate($data);
}
У модели Partner, один метод:
public function partner()
{
return $this->belongsTo('App\Models\User');
}
Чую опять где-то подвох :)

Valery
12.01.2017
14:54:36
а что в $data? там должно быть 2 массива
// If there's a flight from Oakland to San Diego, set the price to $99.
// If no matching model exists, create one.
$flight = App\Flight::updateOrCreate(
['departure' => 'Oakland', 'destination' => 'San Diego'],
['price' => 99]
);

Alexander
12.01.2017
15:00:48

Valery
12.01.2017
15:01:15
первый - на совпадение, второй - на обновление

Alexander
12.01.2017
15:01:51
эм.. я походу не так понял функцию что ли )
array:2 [▼
"work_time" => "с 9 до 19"
"warning" => "опасность"
]

Valery
12.01.2017
15:03:01
а что из этого меняется?

Alexander
12.01.2017
15:05:51
Я думал функция работает следующим образом, если записи нет, она создает, если есть - обновляет

Valery
12.01.2017
15:11:24
если сделать ->updateOrCreate(
["work_time" => "с 9 до 19",
"warning" => "опасность"],
["work_time" => "с 9 до 19",
"warning" => "безопасность"],
), то, обновит поле warning

Alexander
12.01.2017
15:12:38
Как то не логично передавать массив со старыми данными ( мне тогда проще проверить есть ли запись или нет

Valery
12.01.2017
15:13:36
а как он иначе может узнать, есть ли запись? либо по id, либо по нескольким полям одновременно

Google

Valery
12.01.2017
15:15:00
тут наверно вообще другой метод надо, если подразумевается, что какая-то модель уже загружена

Alexander
12.01.2017
15:15:10
Ну дак я его вызываю из модели же..
$this->partnerProperties() - вот тут он уже занет, есть там чего или нет )

Valery
12.01.2017
15:16:07
так тогда наверно нао просто новые данные присвоить и сделать save()

Alexander
12.01.2017
15:18:43
думал схетрить )
public function savePartnerProperties($data)
{
if (empty($this->partnerProperties)) {
$this->partnerProperties()->save(new Partner($data));
} else $this->partnerProperties()->update($data);
}
так в итоге сделал )

root
13.01.2017
11:17:16
Всем ку! Ребята подскажите как можно сделать проверку ширины экрана пользователя в ларавел?
Есть какой нить метод чтобы в контроллере прописать?
Или средствами пхп?

Rafkat
13.01.2017
11:20:26

root
13.01.2017
11:21:10

Rafkat
13.01.2017
11:21:20
Пхп где работает?
На сервере или стороне клиента?

root
13.01.2017
11:25:15
На стороне клиента уважаемый
Тогда попробую задачу объяснить. Есть таблица. 5 колонок. Если открыть таблицу на дескторе то всё гуд и все данные помещаются. Если открыть с планшета, то уже одна лишняя, если с мобилы то 2 лишние колонки.
Думаю сделать три таблицы с классами бутструпа мобильные, планшет, десктор. Только получается что 3 таблице будет.
Либо думаю можно в контроллере средствами пхп получить ширину экрана и создать условие по которому в шаблон передастся переменная 1, 2 или 3. В шаблоне уже условие какую из таблиц показывать.

Rafkat
13.01.2017
11:26:17

root
13.01.2017
11:26:40
Допёр о чем идёт речь
Значит делаем средствами css через media

Rafkat
13.01.2017
11:29:52
ты можешь через js получить размер экрана и потом орендерить
но лучше так не делать
через media самый норм

root
13.01.2017
11:30:15
Ок. Спасибо
Буду делать на css

Google

Илья
17.01.2017
06:33:00
Ну contains ищет совпадения, у тебя в коллекции нет массива с id=1

Alexander
17.01.2017
06:35:04
Видимо я не до конца коллекции понял.
У меня в коллекции 2а item'a
Каждый = массив
Разве не в них он должен искать?

Valery
17.01.2017
06:35:25
а покажи, что будет если коллекцию сделать toArray
странно. вроде всё верно
а ты так делал? ->contains('id', 1) ?
поробуй ->contains('id', '1')

Alexander
17.01.2017
06:39:24
нет, я делал ->contains(['id' => 1])
сейчас попробую

Valery
17.01.2017
06:39:41
ну так RTFM тогда )

Илья
17.01.2017
06:40:09
Вы не совсем его понимаете, contains сравнивает каж щщдый элемент коллекции с тем что ему передали

Alexander
17.01.2017
06:41:00

Valery
17.01.2017
06:41:41
$collection = collect([
['product' => 'Desk', 'price' => 200],
['product' => 'Chair', 'price' => 100],
]);
$collection->contains('product', 'Bookcase');
// false

Илья
17.01.2017
06:41:56
Не внутри элемента а весь элемент
Это тебя там сущтность

Valery
17.01.2017
06:43:50
тогда сначала toArray, потом обратно collect )

Илья
17.01.2017
06:44:28
Там же замыкание можно сунуть в 5.3

Valery
17.01.2017
06:47:28
т.е. будет так? return $value->id == 1;

Илья
17.01.2017
06:48:11
Угу

Alexander
17.01.2017
06:50:01
А что поменяется от замыкания то?
ааа

Google

Alexander
17.01.2017
06:50:38
понял
сейчас попробую

Valery
17.01.2017
06:52:02
с массивом-то понятно не работает, но если сделать toArray, то объекты внутри превратятся в массивы, которые потом опять загнать в коллекцию. изврат конечно. юзай замыкание

Alexander
17.01.2017
06:52:18
Угу, с замыканием все ок :)
спасибо ребят!
блин, а я так понимаю засунуть в засыкание глобальную переменную можно только через константу :(

Valery
17.01.2017
07:19:25
use($var)

Alexander
17.01.2017
07:20:29
только нашел ))
спасиб )

Valery
17.01.2017
07:20:51
?

Alexander
17.01.2017
11:17:18
Блин, пропустил ))
Всем привет :))
Я видимо самый нуб тут, только от меня и падаются вопросы =)
Не могу понять загадку одну, пишу в шаблоне:
{{ old('name') or $product->name }}
по логие, если old('name') == null то выводим $product->name
НО, но на практике я получаю в input цифру 1, когда old('name') == null
Проверяю {{ dd(old('name') }} получаю null
Не могу понять, где подвох

Илья
18.01.2017
10:37:39
кмк у тебя выводиться результат сравнения old('name') or $product->name
а не то что там внутри

Alexander
18.01.2017
10:40:41

Илья
18.01.2017
10:41:10
ну я же написал что я так думаю =) а не утверждаю)

Dan
18.01.2017
10:41:13
$product->name в переменную обернуть может стоит?
можно ли вызывать параметры объекта в шаблоне? я не помню если честно

Alexander
18.01.2017
10:41:58
Можно
у меня все поля так вызываются

Dan
18.01.2017
10:42:20
вообще наверное можно, да

Google

Alexander
18.01.2017
10:42:41
странности блин )

Dan
18.01.2017
10:44:44
полагаю что проверить можно для начала написав полную версию тернарного оператора
{{ isset(old('name')) ? old('name') : $product->name }}
но что-то мне подсказывает, что это тоже не поможет

Alexander
18.01.2017
10:47:19
С тернарным все ок
лара на isset чет ругается кстати )