All streams
Search
Write a publication
Pull to refresh
30
0
Ivan Dudarev @trawl

Дилетант

Send message
Картинка
image

Надеюсь, мне никогда не доведется ехать на заднем сидении данного авто...

А что, если Model в MVC — это не про объект, представляющий таблицу в БД, а про модель бизнес-логики?

У Серкова, чтобы свалить, был только самолёт, но другие факторы никак не могли повлиять на успех:


  • вылет из средней части материка
  • запас хода порядка всего 1000км
  • низкая скорость
  • низкий потолок

в таблице migrations (не в вашем случае, а в обычном) хранится список миграций, которые уже применены к БД, а так же очередность их применения. Чем вам не состояние БД?

в этом проекте накатить схему с нуля с посевом занимает от часа.

Но ведь с представленным вами механизмом все миграции накатываются каждый раз заново (у вас же таблица миграций остается пустая)?

при сбое механизма префиксов, могу быть проблемы с чтением не из той таблицы

Префикс таблиц задается в конфигурации приложения. Как часто у вас проиходят сбои конфигов подключения к БД?


Сложно администрировать такое хозяйство.

Установите регламент префиксов. Например, instanse_{ISSUE_ID}_. Написать скрипт, который дропнет таблицы по префиксу, посмотреть в сторону вебхуков, которые могут дергать этот скрипт при удалении ветки.


По-моему, это куда меньшая боль, недели всё описанное выше.

А в чем проблема работать в одной БД, но добавлять таблицам префиксы для каждой версии кода?

Хорошо, что Б-га нет

а у меня с нуля упало на -1/-0.5


Самое интересное, что показатели-то небольшие, а вижу сильно хуже. Даже на права окулист сделал галочку, чтоб только в очках ездил

А Вы уверены, что дочка Вам пожалуется, если её будут гнобить за допотопный телефон?

Я правильно понял, что Росреерстр подал жалобу в Федеральную Антимонопольную Службу за то, что Яндекс в выдаче отображает рекламу их конкурентов?

Вы так говорите, как будто в остальных местах лара проповедует SOLID

Нет, я говорю лишь о том, что в ларе многие вещи можно сделать по SOLID.


Фасад на фасаде.

Да, и мне ужасно не нравится эта концепция. И не нравится, что документация не рассказывает о best practies.


Поэтому для меня laravel — это некоторый yii на стероидах. Да, модные компоненты. Но статика, магия, рантайм конфигурация…

ППКС

Вообще да, но мы же сейчас про конфигурацию роутинга говорим. Можно и в сервис-провайдере определить конфигурацию роутинга, но я не видел, чтобы так делали. Во всех laravel-проектах, с которыми я сталкивался, роутинг конфигурируется через фасады, будь они не ладны

А, ну в этом случае используется фасад. Можно и без статики сделать:


<?php

$router = app()->get(\Illuminate\Routing\Router::class);
$router->get('register', [RegisterFormController::class, 'invoke'])->name('register');

Но в проектах такого я не встречал


А разве такие вызовы обязательно статические? Массив [$className, $method] не в каждом роутере будет восприниматься, как callable. Такая запись удобна тем, что IDE это понимает и не ругается, что у контроллера есть невызываемый публичный метод. Но под капотом сначала проверяется возможность получить контроллер из контейнера, и, если такая возможность есть, то роут-диспетчер получит контроллер из контейнера и вызовет соответствующий метод. А если контейнер отвечает, что не знает о таком контроллере, то тогда уже передает вызов массиву как статик методу.


Или я не правильно понял статик колл?

а если инжектить Illuminate\Contracts\Translation\Translator, то вообще $this->translator->get();...

Ну из остального не всё legacy. Slim вполне себе норм, на нём и php-di всё же проще собрать приложение, чем на php-di с нуля.

Information

Rating
Does not participate
Location
Калининград (Кенигсберг), Калининградская обл., Россия
Works in
Date of birth
Registered
Activity

Specialization

Backend Developer
Middle
From 3,000 $
PHP
Linux
SQL
Nginx
Symfony
Laravel
PostgreSQL
MySQL