Поиск по тегу: orm

0

Условия запросов (Scope)

Условия запросов (Scope)

Каждый scope — это обычный метод, который начинается с префикса scope. Именно по префиксу ORM понимает, что это scope. Внутрь scope передаётся запрос, на который можно навешивать дополнительные условия.


class Story extends Model
{
    public function scopeActive(Builder $query): Builder
    {
        return $query->where('active', true);
    }
}

Использование:

$stories = Story::query()
    ->active()
    ->paginate($perPage);
0
256
0

Добавлена связь многие ко многим

Добавлена связь многие ко многим (hasManyThrough)
Метод принимает 5 параметров, имя конечного класса, имя промежуточного класса, внешние и внутренние ключи

Внешние и внутренние ключи определяются автоматически, за исключением когда имена полей не совпадают с именами классов

class Story extends Model
{
    public function tags(): Builder
    {
        return $this->hasManyThrough(Tag::class, TagStory::class);
    }
}

Более подробно на странице orm https://github.com/visavi/motor-orm
0
216
Активность
0
В будущем возможно сделаю, пока не получается время выделить 08.09.2023 18:50
0
Вот ещё бы модерацию к комментариям к статьям 02.09.2023 19:39
0
crew, это всего лишь один из способов, чтобы не разрывать цепочку запросов
Можно делать как ты и написал, кому как нравится 23.06.2023 16:49
0
Спорное решение.
Без нее конструкция кажется более читаема (точно всем будет точно понятна), да и причины реализации не ясны - не кажется что без нее написать были какие-то трудности.
...
23.06.2023 12:03
0
Хорошая новость! 20.06.2023 17:28
+1
Самый лучший web-мотор сразу прямо после wap-мотора :respekt 29.08.2022 06:27
+1
Вот это уже совсем другое дело :klass 06.09.2022 10:14
+1
Со временем постараюсь сделать админские настройки 28.12.2022 02:26
+1
Иногда я спрашиваю себя - когда же я освою php, ответ приходит сам собой:

Наверно! В следующей жизни! Когда я стану кошкой, на - на, на на 04.01.2023 03:28
+1
Сейчас хочу сделать чтобы можно было прокинуть роуты в контроллеры, чтобы можно было указывать не ссылки типа /stories имя роута, чтобы легко можно было поменять главную на список статей
Остальное... 07.03.2023 01:42