Created
August 6, 2020 15:31
-
-
Save alex-popov-tech/07222bae6a68b97f7abdeda96a810b2e to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
> не нужно передавать в функцию данные, которые ей не нужны | |
( в данном случае в mixin input передается структура данных целая, | |
тогда как он сам использует только кусочек этой структуры) | |
----- | |
Зачем создавать дополнительный слой, преобразовывая данные, | |
если они все равно кроме представления нигде не будут использоваться. | |
Цель - писать меньше кода | |
===== | |
почему доп слой? это тот же самый код ( мапы, джойны, и все такое ), который лежит | |
не в самом темплейте, а в контроллере | |
>- мне кажется в миксине темплейта не должно быть никакой | |
логики по максимуму, типа я воспринимаю миксины как | |
хелперы для того чтоб не дублировать разметку, а не для | |
того чтоб в переданных и не нужных данных копаться | |
----- | |
миксины - это хелперы. В представлениях может быть логика | |
и это используется повсеместно. В ruby on rails есть view helpers & simple_form, | |
в C# есть подобные штуки и в коде представлений часто используются вставки | |
обычного кода. В конце концов это часть бека и она будет преобразована рендером | |
====== | |
хелперы, но хелперы для работы с разметкой, а не для связанности | |
с сущностями орм же, не? | |
вот из гитхаба что ты привел в пример | |
https://github.com/heartcombo/simple_form#simple-fields-for | |
передается структура данных, а не простые строки, но при этом струкрура | |
данных специально подготовленна для представления, т.е. есть post, в нем есть | |
title, есть наверно какой нибудь description, но нету например id из базы... | |
хотя это возможно пример с головы я взял, там ничего такого прям не написано) | |
но енивей, я не заметил там примеров с non-view данными, только штуки которые | |
используются в представлении непосредственно, типа для label, value, placeholder, | |
etc. | |
т.е. мой поинт в том что в миксинах нужно использовать логику для определения | |
представления, но не нужно использовать логику касаемо обработки/валидации | |
переданных данных извне | |
структура данных передается напрямую из objectionjs, что делает | |
корректную работу темплейтов зависимой от orm, что не круто т.к. | |
они вообще никак не связаны логически | |
------ | |
То, что представление умеет работать с orm это совершенно нормально. | |
вообще есть два уровня хелперов для представлений - первые работают | |
с данными, поверх них строится абстракция, которая умеет работать с ORM. | |
====== | |
а зачем в целом связывать представления с орм,если можно этого не делать? | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment