Как стать автором
Обновить
2
0
Aleksey Svechkar @asvechkar

Пользователь

Отправить сообщение

Чем не доросло? Факты в студию :).

А еще появились и https://litestar.dev/ и https://esmerald.dev/ и https://reflex.dev/. Так что альтернатив Flask-у прибавилось и очень хороших.

Судя по релизам, а уже скоро появится 2 версия, давно.

https://litestar.dev/about/organization.html тут можно почитать, как был Starlite, потом переименовали в Litestar.

На диаграмме сравнения скорости нет фреймворка https://litestar.dev/. Там пишут, что он быстрее FastAPI.

Про fiber не написали. Расходимся...

Вот пример DTO уже с 8.2:

final readonly class UserDTO
{
  public function __construct(
    public UuidInterface $id,
    public string $name,
    public Email $email, //Email - VO
    public DateTimeImmutable $createdAt,
  ) {}
}

Опять какая то левая статья. Зачем вообще публиковать очередной PHP is die? Чисто набить себе очков на хабре?

Пока жив веб, будет жить PHP: Personal Home Page. На данный момент это самый лучший скриптовый язык для веб сайтов. И не важно, пишите как ФП или ООП. Laravel или Symfony. В итоге веб сайт.

Конечно, сейчас существуют такие сайты как Front-end (React, Vue, Angular, ...) и Back-end (Go, Python, Ruby, C#). Но в основной массе - это PHP.

В каком то смысле PHP - мертв. Он, как и любой скриптовый язык, умирает каждый раз, когда скрипт завершает свою работу. Скрипт завершил работу, умер, завершил, умер, и т.д.

Но как ЯП его не похоронить. Как и Python и Ruby.

Я бы использовал https://laravel-mix.com/docs/6.0/installation, универсальный сборщик статики хоть для Django, хотя для другого фреймворка.

Тема применения Python в металлургии не раскрыта. Если статью назвать "Python в машиностроении, станкостроении, приборостроении, угольной промышленности и тд", ничего не поменяется.

Я ожидал описания ПО на Python для получения данных с реверсивных станов холодной прокатки или контролем вентиляции в литейном цехе. Т.е. непосредственным взаимодействем специализированного ПО, оборудования и Python.

Вы играли в "Гоблинов" (1, 2, 3)? Сейчас таких шедевров практически нет, сплошные раннеры и шутеры. Судя по видео, Вы создаете именно квест. Это очень хорошо. Для начала я бы создал скелет сценария, определил бы локации и тезисно описал бы в каждой локации сюжет + финал. В сказке конец не хеппи енд :). Как Вы планируете поступить с колобком?
В целом, как любитель квестов, желаю Вам удачи.
Если будут идеи, обязательно с Вами поделюсь :).

И мне кажется, что вместо обновления в коде updated_at лучше сразу в классе прописать:


updated_at = Column(DateTime, default=datetime.datetime.now, server_default=text('now()', onupdate=datetime.datetime.now)

В целом можно вообще вынести id, created_at, updated_at в отдельный mixin или абстрактный класс.

Я бы всё таки вместо


id = Column(Integer, autoincrement=True, primary_key=True)

использовал


id = db.Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4)
Вроде поискал в комментах, про Electron не писали.

Десктоп версию можно было сделать на Vue.js + Electron.
Бэк на сервере php или python. Всё полегче и побыстрее.
Не увидел в списке, какую СУБД используете?
Например, про запуск очередей и вебсокета в отдельных контейнерах, а не через supervisor. Про certbot или traefik. Про сбор логов всех контейнеров в одном месте. Про сборку фронта в одном контейнере с nginx. Вроде бы мелочи, но ни в одном блоге, мануале, примере такого не нашел. Чтоб кто то взял, разложил настройку для крупного проекта, расписал конфиги, как правильно всё настроить и не изобретать велосипед каждый раз.
Вообще про сборку контейнера много статей написано. Но вот про нюансы именно ларавеля все авторы забывают или забивают. Например, представьте проект: Laravel 6 + Postgres 12 + Nginx + Vue + Horizon + Websockets + Redis. И всё из коробки. А теперь все технологии надо разложить по контейнерам. Связать сетью и вывести наружу только Nginx. А еще выполнить несколько artisan команд перед запуском. Чуть не забыл про сертификат и https. А локально еще и xdebug. Vue собирается с помощью laravel-mix.
Настройте .gitlab-ci.yml в своем проекте.
php artisan make:model ModelName -mrc

Даже так:
php artisan make:model ModelName -a


А почему Bootstrap 3? Уже давно 4.3

Судя по примерам кода автор не до конца знает фреймворк, пишет какой то самопал.
— How much watch?
— One watch.
— Such much?
— For whom how.
— Petegorsk inyaz?
— Ask.
будь я настроен менее критически, я бы решил что лара сама разбирается, когда отдавать вью с формой, а когда json.

Нет, конечно :). Я пример как раз для JSON и написал. Если бы я хотел вернуть вью, а бы написал:
$users = User::orderBy('name')->get();
return view('users.index', compact('users'));
Не думаю что сериализаторы должны заниматься чем-то кроме сериализации и валидации данных,


Так и я про валидацию. В Laravel пишем Request, где проверяем, нет ли текущих (не помеченных на удаление) записей с такими же значениями полей, какие передали в Request. Если есть, возвращаем сообщение об ошибке. Например,
class UserController extends Controller {
...
public function restore(UserRequest $request)
{
    // валидация происходит до выполнения действия. 
}
...
}


Вполне возможно, что в Django такая проверка делается не в сериализаторе, а в менеджере модели.
Насчёт шаблонизатора в RoR: кажется он apidock.com/ruby/ERB.

А вот такого сахара (https://github.com/rails/jbuilder) я в других фреймворках не встречал.

Информация

В рейтинге
3 830-й
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность