Size: a a a

Clojure — русскоговорящее сообщество

2019 July 17

MA

Mike Ananev in Clojure — русскоговорящее сообщество
фактически для добавления новой сущности в БД или изменения ее схемы мы создаем спеку на сущность, и одной строчкой регистрируем новую спеку в DAO  слое.
источник

MA

Mike Ananev in Clojure — русскоговорящее сообщество
наверное. мы так не делали.
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
Мы в прошлом проекте ушли от compojure-api, потому что с ростом урлов растет кодавая база. Еще недостаток в том, что там все на макросах.
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
И вообще переехали на аналог RPC + мультиметод
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
добавить новый мульт проще, чем врезать код в дерево апишек как это сделано в compojure-api
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Там еще очень много "магических слов" надо писать. Compojure api слишком много на себя берет: и аутентификацию, и валидацию и еще много чего
источник

MA

Mike Ananev in Clojure — русскоговорящее сообщество
Ivan Grishaev
добавить новый мульт проще, чем врезать код в дерево апишек как это сделано в compojure-api
мы тоже так делаем, новый мульт врезаем. диспатчиться так легче.
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
еще там есть форма для let, который будет выполнен когда-то позже и апишка будет выполнена под ним. очень неочевидно, переменные берутся из воздуха
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
Это прям каноничный случай когда обмазался макросами и привет
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Вообщем можно взять нормальный роутер/урл матчер а остальное сделать самому
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
или если JSON-RPC, то один роут выходит
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Ivan Grishaev
или если JSON-RPC, то один роут выходит
ну на это не все пойти готовы.
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
хотя в свете graphql - это становится модным
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
Ivan Grishaev
И вообще переехали на аналог RPC + мультиметод
это поверх чистого compojure? есть ли либка или это все самописное под один проект?
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
да, обычно это руками сетапится
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
а какие есть хорошие альтернативы compojure-api? а то версия 2 еще в альфе и в ней есть неприятные баги и много моментов которые спрятаны за приватные функции и их нельзя реиспользовать в своем подхаке
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
bidi с мультиметодом, один раз настроил и потом все хорошо
источник

AO

Andrey Osnovin in Clojure — русскоговорящее сообщество
А есть пример как вы это делаете?
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
Ivan Grishaev
bidi с мультиметодом, один раз настроил и потом все хорошо
смотрю на код, и там есть Schema. можно ли от нее полностью отказаться в пользу spec?

это собственно основная причина почему используем альфу compojure-api 2 вместо стабильной 1 ветки
источник

MA

Mike Ananev in Clojure — русскоговорящее сообщество
мы полностью сидим на spec уже 1,5 года. полет нормальный.
источник