soy nuevo en ruby on rails y estoy trabajando con la versión 2.3 en mac osx. estoy tratando de crear la misma funcionalidad que crea un andamio, pero por mi cuenta. creé un controlador, una vista y un modelo de "publicación". en el controlador post, tengo los siguientes:variable de instancia vs. símbolo en ruby on rails (form_for)
class PostController < ApplicationController
def index
end
def new
@post = Post.new
end
end
en new.html.erb, tengo los siguientes:
<h1>New Post</h1>
<% form_for :post do |f| %>
<%= f.text_field :title %>
<% end %>
i notado que en el andamio código generado, el uso de la variable de instancia @post para form_for helper. ¿Por qué usan la variable de instancia en la forma generada del andamio si pasan el símbolo: publicar en form_for hace exactamente lo mismo, mientras que un símbolo requiere cambiar la configuración de las rutas?
muchas gracias, yuval
muchas gracias. eso lo deja claro :) –
la importancia de ese método oculto es que los navegadores no son compatibles con los métodos de poner y eliminar, así que debes dejar que la aplicación sepa cuando un método de publicación está destinado a ser un put o un delete, afortunadamente rails mágicamente maneja esto para nosotros – ErsatzRyan
Necesita utilizar @post en el nuevo formulario, y lo necesita incluso si sus formularios están separados. De lo contrario, cuando crea una nueva publicación con datos no válidos y regresa al nuevo formulario con errores de validación, no completará la información que ingresó. –