2009-09-25 6 views
0

(rails 2.3) J'ai les actions suivantes dans le contrôleur:form_remote_for transmet des valeurs nulles

def new 
    @entity = Entity.new 
end 

def create 
    @entity = Entity.new(params[:entity]) 
    @entity.save 
end 

Je la forme suivante:

#this is the new.html.erb 
<% for_remote_for(@entity) do |f| %> 
<%= f.text_field :title %> 
<%= f.text_field :description %> 
<% end %> 

Pour une raison quelconque les valeurs: titre, et la description est passée comme nulle. Tout le reste (par exemple created_at, updated_at) est rempli.

Une suggestion pour laquelle ces valeurs sont passées comme nulles?

Répondre

0

Peut-être que vous pouvez essayer de le faire dans votre 'créer' méthode:

def create 
    Rails.logger.info "These are all params: " + params[:entity][:title] + params[:description] 
    @entity = Entity.new(params[:entity]) 
    @entity.save 
end 
  • peut-être vous pouvez prendre le problème dans le journal

également vérifier Rails api pour la syntaxe correcte - si vous avez la forme générique remote_form_for(@post) alors c'est ok, sinon vous avez besoin (:post).

1

Peut-être que cela pourrait aider:

ActionView :: :: Helpers PrototypeHelper

remote_form_for(record_or_name_or_array, *args, &proc;) 

crée un formulaire qui présentera en utilisant XMLHttpRequest en arrière-plan au lieu du rechargement régulier arrangement POST et un champ autour d'une ressource spécifique qui sert de base à des questions sur les valeurs des champs. ressources Exemple:

<% remote_form_for(@post) do |f| %>  ... 
Questions connexes