Size: a a a

2021 April 23

ŹR

Źmićer Rubinštejn in pro.elixir
Где такое написано - там и вьюха
источник

AB

Alex Bubnov in pro.elixir
причем, будто бы сам вопрос бойлерплейта на версионировании view не решают
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Само erb - не вьюха, чтобы рельса не говорила
источник

ŹR

Źmićer Rubinštejn in pro.elixir
В этом коде так же как erb подгружаются ещё и хелперы
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Поэтому ни erb ни хелперы- это не вьюха
источник

LL

Lama Lover in pro.elixir
Потому что не все вьюхи могут быть темплейтами. Если у тебя приложение с SSR, то да, это избыточность. Но сорри, феникс стремится быть универсалным решением
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Просто в рельсе вьюха где-то там имплиситная
источник

ŹR

Źmićer Rubinštejn in pro.elixir
А в фениксе - эксплиситная
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Вот и вся хуйня
источник

LL

Lama Lover in pro.elixir
Да и потом, как только в темплейте появляются функции, у тебя появляется код во view. А это совсем не редкость
источник

LL

Lama Lover in pro.elixir
Ну вот мы и обсуждаем почему в фениксе выбрали эксплиситный вариант
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Ну а то что erb.new вызывается в  рантайме - это и так понятно
источник

AB

Alex Bubnov in pro.elixir
короче, получилось как всегда в фениксе - в одну подсистему напихали целую кучу несвязанных функциональностей
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Потому что феникс не может «найди все файлы в папке и скомпилируй модулей»
источник

AB

Alex Bubnov in pro.elixir
ну чего вдруг не может-то
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Ну так не принято потому-что в эликсире
источник

LL

Lama Lover in pro.elixir
Ты же просто жирный тролль
Ты ведь даже не пишешь как пришёл к такому выводу, просто вкидываешь. Зачем с тобой общаться?
источник

AB

Alex Bubnov in pro.elixir
да я всё писал, но повторю.
подсистема View реализует в той или иной степени следующие задачи:
- content negotiation  
- предоставление хелперов темплейтам (ты сказал)
- резолв темплейтов, причем, насчет явности - # render("show.html", ...) defined by show.html.eex template automagically
- версионирование api (ты сказал)
- обработку ошибок??(хз, нужно уточнить)

причем реализует это всё абсолютно implicit и непрозрачно
источник

AB

Alex Bubnov in pro.elixir
и в общем, все эти вещи можно делать, гм, гораздо понятнее, если расплести
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Что такое content negotiation?
источник