Bekbolot
Bekbolot
User::find($this->author); а это уже работает но не хотел далать так, помоему это не правильно
Maksim (Ellrion)
так а как ты релейшен назвал? так же как и атребут?
Maksim (Ellrion)
наверное так и есть вот и не работает
Bekbolot
так а как ты релейшен назвал? так же как и атребут?
<?php use \Illuminate\Database\Eloquent\Model as Model; class Blog extends Model { public $timestamps = false; protected $fillable = [ 'title', 'description', 'content', 'time', 'image', 'author' ]; public function getImageUrlAttribute(){ if (!_empty($this->image)) return "/uploads/" . $this->image; else return DEFAULT_NOIMAGE_URL; } public function author(){ return $this->belongsTo(User::class, 'author', 'id'); } } вот весь класс
Maksim (Ellrion)
Maksim (Ellrion)
не должны совпадать метод релейшена и имя атребута просто
Bekbolot
там на оф сайте написал же hasOne, belongsTo второй аргумент foreing_key, третий local_key
Maksim (Ellrion)
не должны совпадать метод релейшена и имя атребута просто
Сргей
Поле author переименуй в author_id
Сргей
И в релейшеноюе тоже
Vlad
Подскажите пожалуйста. Есть таблица с правами доступа пользователя к дверям. В одном из полей хранится массив айдишников (JSON) тех дверей которые ему можно просматривать. Есть ли встроенный метод в LARAVEL который при обновление поля, добавит только те id, которых нет. Что-то вроде sync() для многие-ко-многим.
Bekbolot
Bekbolot
но это не так хорошо😐
Maksim (Ellrion)
Maksim (Ellrion)
не хорошо у тебя было названо до этого)
Филипп
День добрый, коллеги! Мы все ещё ищем джуниора/мидл фулстек разработчика. Laravel+MySQL. С уклоном на ботов, работы с внешними API и различные автоматизации. Пишите @upanddown Описание, что бы не захламлять группу https://goo.gl/forms/ckaz2yU0wZuA4yra2
Bekbolot
не хорошо у тебя было названо до этого)
can't I change name of the field of the SQL query?
Ахмедов
помогите. У каждого Exercise по 2-3 solutions. Мне надо взять каждому Exercise по 1ному которая последняя добавленная. Вопрос состоит в том как написать where условия в этом запросе для solutions
Ахмедов
который вызываеться с with
Александр
Никак, нужно какое-то поле или raw запросом
Александр
Посмотри, какие запросы при жадной загрузке выполняются - все станет понятно
Igor
Народ, подскажите пожалуйста. В модели определил функцию, которая использует другую функцию определённую в этой-же модели. Почему при вызове 1-й функции вылазит ошибка что 2-я функция не существует?
Maksim (Ellrion)
помогите. У каждого Exercise по 2-3 solutions. Мне надо взять каждому Exercise по 1ному которая последняя добавленная. Вопрос состоит в том как написать where условия в этом запросе для solutions
я когда то делал вот такой скоуп /** * Находит последнюю запись для значений определенного поля. * * Т.е. с групировкой по указанному полю. * * @param Builder|QueryBuilder $query * @param string $column * @param array $values * @param string $date * @return Builder|QueryBuilder */ public function scopeLastFor($query, $column, array $values = [], $date = 'created_at', $mergeWheres = true) { if (!empty($values)) { $query->whereIn($column, $values); } $sub_query = static::select("{$column} AS __{$column}")->selectRaw("MAX({$date}) as __{$date}")->groupBy($column); if ($mergeWheres) { $sub_query->mergeWheres($query->getQuery()->wheres, $query->getQuery()->getBindings()); $query->getQuery()->mergeBindings($sub_query->getQuery()); } $query->join(new Expression("({$sub_query->toSql()}) as last_for_t"), function ($join) use ($column, $date) { $join->on("last_for_t.__{$column}", '=', $column) ->on("last_for_t.__{$date}", '=', $date); }); return $query; } для новой ларе я правда не тестил. попробуй добавить его в базовую модель и ->with(['solutions' => function($q) { $q->latsFor('excersise_id'); })])
Nikita 🔥
У меня такая проблема, я редактирую vue.js файлы, а они не обновляются после перезагрузки страницы. Сайт стоит на openserver использую laravel
Bekbolot
не хорошо у тебя было названо до этого)
какое название лучше для понимание ларавела author_id или user_id?
Bekbolot
Nik
It's pity
Maksim (Ellrion)
какое название лучше для понимание ларавела author_id или user_id?
https://t.me/laravel_pro/142166 (по конвенции лары user_id - nогда в релейшене не нужно будет указывать дополнительные параметры. но мен лично нравится author_user_id) главный тезис повторяю тебе третий раз: https://t.me/laravel_pro/142170
Maksim (Ellrion)
ууу всё плохо. совсем новечек?
Igor
Да)
Igor
Ну, несовсем, но да
Bekbolot
Ну, несовсем, но да
для начало выучите сам PHP
Maksim (Ellrion)
ну как фикс это должно быть echo self::FunctionName2() но надо почитать азы
Igor
Igor
Функция-то статическая
Anton
А потом человек откроет для себя позднее статичиское связывание и узнает про static::FunctionName2()
Nikita 🔥
Ребята, как писать фронтенд для сайта, который на openserver стоит?
Maksim (Ellrion)
ну он много для себя всего еще откроет)
Nikita 🔥
я редактирую файлы, а они не обновляются
Anton
Хмм, интересно, а в чём разница?
Если у тебя будет Mdl2 extends Mdl
Anton
И ты сделаешь в ней FunctionName2()
Nikita 🔥
кэш?
проблема точно не с кешем. Чистил его, отлючил в DevTools и все перезагрузки делаю с CTRL + F5
Anton
но вызовешь Mdl2::FunctionName1() - как ты думаешь какая функция у тебя выховется если в FunctionName1 будет self::
Anton
FunctionName1 есть только в Mdl1
Anton
Mdl
SarcasmIO
как можно такую простую вещь как late static bindings объяснять так сложно
Anton
Критикуешь - предлагай
Igor
Т.е. если вызываемая функция вызвана в дочернем классе а определена в родительском при этом вложенная функция определена и там и там, то вызовется родительская вложенная функция - при self::
Anton
self:: вызовет функцию из этого класса или от родителя
Anton
static - будет всех наследников проверять
Igor
Понял, спасибо
Anton
как можно такую простую вещь как late static bindings объяснять так сложно
Ну вот видишь, все поняли, а ты даже не предложил
SarcasmIO
мне лень)
SarcasmIO
вместо того что бы объяснять статическое связывание
SarcasmIO
лучше бы сказал никогда не юзайте наследования и не будет боли
SarcasmIO
)
Anton
Наследование можно очень аккуратно и красиво использовать 🙂
Anton
Постарайтесь не использоваться позднее статическое связывание - это не плохой совет
Dmitriy
лучше бы сказал никогда не юзайте наследования и не будет боли
как только ты от него откажешься в своем любимой фрейме. Хд
Anton
Вот из за таких вот поведений
Anton
Так то все что угнодно можно использовать и goto тоже!!! Просто пока не научился - лучше избегать
Dmitriy
почему?
отвечает @oneerror
Nik
эм) это несколько противоречит тому что я процитировал, или же что-то вырвано из контекста
SarcasmIO
почему?
так или иначе, ты как разумный человек, предполагаешь что будет, если ты на скорости 250+ влетишь в столб, вот только пользоваться ты этим вряд ли захочешь
SarcasmIO
так же и с late static bindings
Nik
статика впринципе зло, но тут нужно избегать не связывания, а статики впринципе
Nik
зы. бумер на 250 срезает столб под корень :)