Soy nuevo en los carriles y preguntando cuando debería poner el código en un ayudante en comparación con poner el código en el modelo.utilizar ayudantes vs Modelo
¿Existe una "regla de oro" por así decirlo?
Soy nuevo en los carriles y preguntando cuando debería poner el código en un ayudante en comparación con poner el código en el modelo.utilizar ayudantes vs Modelo
¿Existe una "regla de oro" por así decirlo?
Use ayudantes si está trabajando en una vista (plantilla) y que necesita para construir un poco compleja de HTML, tales como <table>
. O bien, si desea cambiar algunos datos de presentación que no están conectados a la base de datos.
def truncate_html(html, options = {})
options[:length] = 35 unless options[:length]
truncate(strip_tags(html), options)
end
Utilice modelos cuando trabaje con objetos de base de datos, y desee simplificar la lógica comercial.
def one_day?
start_date.to_s[0,9] == end_date.to_s[0,9]
end
Aquí es Ayudantes en las guías: http://guides.rubyonrails.org/form_helpers.html
Y aquí es Modelos: http://guides.rubyonrails.org/active_record_querying.html
"poco compleja de HTML como un" --- como un qué? – Mittenchops
Eso fue
@ChuckBergeron O simplemente usa los backticks para indicar el uso del código. Lo solucioné por ti. ;) –
Ayudantes sólo deben contener lógica para la vista
modelos deben contener únicamente la lógica relacionada con el objeto modelado, no relacionados con la transacción a cabo ni la vista renderizada
Fuente
2011-02-16 17:31:19
Lo mejor es utilizar ayudantes cuando el código que el ayudante está creando para que se muestre solo en la vista. Por ejemplo, si usted quiere tener métodos que ayudan a crear enlaces HTML, que debe ir en el helper:
Si el código es la lógica de negocio que debe ir en sus modelos. También debe tratar de poner tanta lógica de negocios en sus modelos, no quiere este código en sus puntos de vista y controladores. Por ejemplo, si desea procesar un pedido, que el código debe ir en el modelo:
Fuente
2011-02-16 17:31:29
Cuestiones relacionadas