2013-06-02 3 views
0

Итак, у меня есть частичный поиск, который я хочу использовать в любом месте сайта. Я понимаю, что это вообще плохо поставить логику в представлении, но я могу сделать что-то вродеRails - Это ужасно назвать модели напрямую во взглядах?

= form_for User.search do |f| 

Или это абсолютная семантическая необходимость, что я ставлю какой-либо модель-вызов метода в контроллере, даже если я «Ничего не меняя?

+0

Все, что в представлении может обрабатывать пользователь, особенно если они умные пользователи. Я бы поместил свой код в контроллер и позвонил ему через представление. – coletrain

+0

Можете ли вы подробно рассказать об этом немного, я почти на 100% уверен, что если я положу логику в точку зрения, ее нельзя будет манипулировать пользователем. – OneChillDude

+2

Скажем, например, вы поместили логику формы поиска в представление, которое пользователь может взломать вашу форму через SQL Injection и т. Д. Никогда не недооценивайте своих пользователей. Попробуйте использовать вспомогательный метод, а затем поместите ваш необработанный код в представление. – coletrain

ответ

1

Лучшим подходом было бы использование шаблона презентатора моего друга!

Там отличный railscast о Draper жемчужине here

Надежда, которая будет направлять вас подальше от потенциально болезненного пути, который вы ступать!