2010-08-12 11 views
0

J'ai le problème suivant. J'ai un formulaire qui prend une entrée pour un objet "Chart". Mais après le traitement du formulaire, je souhaite afficher l'une des valeurs, et il ajoute la clé de cette valeur.Clé d'attribut d'affichage de problème Rails avec la valeur des attributs

modèle de classe

class Chart 

attr_accessor :title, :series 

    def initialize(title = nil, series = []) 
     @title, @series = title, series 
    end 
end 

Vue de forme:

<% form_for :chart , :url => { :action => "show" } do |f| %> 

<p> 
    <%= f.label :title %><br /> 
    <%= f.text_field :title %> 
</p>... 
<% end %> 

contrôleur graphique, méthode show:

def show 

    @chart = Chart.new(params[:chart]) 
end 

Vue du spectacle:

< h2><%=h @chart.title %></h2>

qui affiche: "title" input_forms_title ""

par exemple: l'écriture sous la forme d'entrée: économie, impressions à la vue du spectacle: "titleEconomy"

Toutes les idées?

Répondre

0

Je viens de le découvrir. Le problème était dans la méthode constructeur ou initialize. En changeant la méthode d'initialisation à:

def initialize(options = {}) 
    @title = options[:title] 
    @series = [] 
end 

Il accepte maintenant tous les paramètres parfaitement!