Size: a a a

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

2020 February 19

IG

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

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Mikhail Borisov
А, я понял, ну в принципе решает, но опять же, нулы в базе зачем-то хранить.. И в коде надо распарсить это, но это уже детали, это норм
«нулы в базе зачем-то хранить»
ну это уж как у вас запросы
если вы хотите одним запросом сущности разного типа забирать, то это удобно
если вы с каждой сущностью в изолированном контексте работаете, то непонятна нужда в иерархии
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Sergey Trofimov
«нулы в базе зачем-то хранить»
ну это уж как у вас запросы
если вы хотите одним запросом сущности разного типа забирать, то это удобно
если вы с каждой сущностью в изолированном контексте работаете, то непонятна нужда в иерархии
В одних местах контекст изолированный, в других нет
источник

V0

Vlad 0xcd55d8db in Clojure — русскоговорящее сообщество
Sergey Trofimov
периодически приходят люди и спрашивают, с чего начать
я поделился примером, как это сформировалось у меня
никого ни к чему данный пример не обязывает
опоздал на холивар, и да, файликов и кода многовато, но по набору либ это действительно 2020.

вот эта идеология “у нас много библиотек, а не фреймворки” немного тухнет, когда скидываешь людям кучу ссылок на все эти next.jdbc/integrant/mount/shadow-clj/ring и metosin-скую оргу.. “эм, а есть пример как это все вместе выглядит?” -

действительно есть еще кроме clj-mlib что нибудь?
лучше с похожим набором и в паре с cljs (не куча lein almost-only-ring templates)
источник

V💩

Vlad 💩 in Clojure — русскоговорящее сообщество
Mikhail Borisov
На псевдоязыке:

Creature

Person : Creature
    name: string
    email: string
    birth_date: date

Dog : Creature
    name: string

Alien : Creature
    name: string
    planet_of_origin: string

(И допустим мы знаем, что других нет и не бывает)
Вопрос: как такое представлять в реляционной бд?
ну таблица creature в ней общие поля и потом с таблицы dog, alien, person foreign key на creature так не подходит?
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Vlad 💩
ну таблица creature в ней общие поля и потом с таблицы dog, alien, person foreign key на creature так не подходит?
Так тоже можно)
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Vlad 💩
ну таблица creature в ней общие поля и потом с таблицы dog, alien, person foreign key на creature так не подходит?
Наверное, это даже лучший вариант
источник

VM

Vyacheslav Mikushev in Clojure — русскоговорящее сообщество
Vlad 💩
ну таблица creature в ней общие поля и потом с таблицы dog, alien, person foreign key на creature так не подходит?
Запрос будет строиться через join'ы? Там получится достаточно сложный запрос. Тогда как через jsonb все будет гораздо проще и лежать будет в одном месте. Мне больше понравилось использовать jsonb, чем пользоваться postgresql как реляционной базой.
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
я добавил про sql database в свой прототип https://github.com/serioga/webapp-clojure-2020
источник

p

programmist ⌨️ in Clojure — русскоговорящее сообщество
Vyacheslav Mikushev
Запрос будет строиться через join'ы? Там получится достаточно сложный запрос. Тогда как через jsonb все будет гораздо проще и лежать будет в одном месте. Мне больше понравилось использовать jsonb, чем пользоваться postgresql как реляционной базой.
Для каждой отдельной сущности запрос будет простой. А собирать их вместе, тогда и по таблицам не надо разносить, NULL'ами разделять.
источник

V💩

Vlad 💩 in Clojure — русскоговорящее сообщество
Vyacheslav Mikushev
Запрос будет строиться через join'ы? Там получится достаточно сложный запрос. Тогда как через jsonb все будет гораздо проще и лежать будет в одном месте. Мне больше понравилось использовать jsonb, чем пользоваться postgresql как реляционной базой.
ну да через join, если запрос с одним join для выборки одного типа это сложный тогда да
источник

VM

Vyacheslav Mikushev in Clojure — русскоговорящее сообщество
Задам отвлеченный вопрос, может быть, кто-нибудь сталкивался. Как в macos'и изменить комбинацию клавиш для смены языка на ctrl+shift?
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
источник

VM

Vyacheslav Mikushev in Clojure — русскоговорящее сообщество
Мне нужно именно ctrl+shift.
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
М. Ну, тогда добро пожаловать в мир hammerspoon или karabiner
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
Наверное можно в карабинере поискать
источник

VM

Vyacheslav Mikushev in Clojure — русскоговорящее сообщество
Я попытался въехать в karabiner, но не получилось.😂
источник

VM

Vyacheslav Mikushev in Clojure — русскоговорящее сообщество
Vlad 💩
ну да через join, если запрос с одним join для выборки одного типа это сложный тогда да
Если нужно выбрать все типы сущностей, то уже три типа джойна.
источник

VM

Vyacheslav Mikushev in Clojure — русскоговорящее сообщество
Плюс, выводить все их поля в select. И у некоторых они будут NULL.
источник

V💩

Vlad 💩 in Clojure — русскоговорящее сообщество
Vyacheslav Mikushev
Если нужно выбрать все типы сущностей, то уже три типа джойна.
а в каком случае понадабятся все 3 сущности одновременно?
источник