@ru_laravel

Страница 17 из 39
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] );

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: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
Вы не совсем его понимаете, contains сравнивает каж щщдый элемент коллекции с тем что ему передали
Ну вот, в коллекции 2а эллемента, он же в них должен искать соотвествующую пару?

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
тогда сначала toArray, потом обратно collect )
он с массивом не работает :)

А что поменяется от замыкания то?

ааа

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 чет ругается кстати )

Страница 17 из 39