2010-08-21 5 views
0

Je voudrais créer un lien qui passe un paramètre, donc je n'ai pas besoin de le demander dans le formulaire.link_to new avec le paramètre

Quelque chose comme ceci:

<%= button_to "New", new_skill_path(:controller => "skills",:action => "new", :request => "true") %> 

je peux montrer que le paramètre est pris ... mais mon avis, le <%= f.text_field :request %> est pas « vrai »?

(idem si j'ajoute: post)

Répondre

1

Essayez de ne pas utiliser @request car Rails Utilisez la méthode de demande, et je préfère utiliser link_to au lieu de button_to, de toute façon vous envoyer vos données par la méthode get .

Vues

<%= link_to("New", "/skills/new?val=true") %> 

ou ...... Je pense que celui-ci est beaucoup mieux

<%= link_to "New",new_skill_path+"?val=true" %> 

Contrôleur

@val = true if params[:val] == "true" 
+2

Cela semble un peu moins sec que ce qu'elle devrait être parce que Si la route vers le contrôleur de compétences est modifiée, vous devrez modifier manuellement le chemin spécifié dans l'appel 'link_to'. Comment pouvons-nous tirer parti des aides de chemin déjà disponibles? –

Questions connexes