Utilisation de l'aide de textarea dans les formulaires Rails
Pourquoi ce code afficher une erreur dans la zone de texte?
<%= form_for(:ad, :url => {:action => 'create'}) do |f| %>
<%= f.text_field(:name) %>
<%= f.text_area_tag(:text, "", :size => "50x10") %>
<%= submit_tag("Submit") %>
<% end %>
source d'informationauteur maria
Vous devez vous connecter pour publier un commentaire.
La
FormHelper
méthode esttext_area
pastext_area_tag
.Utiliser une des opérations suivantes:
ou:
La
f
variables que vous créez dans la première ligne est une référence à votre FormBuilder. Par défaut, les référencesActionView::Helpers::FormBuilder
ou vous pouvez créer votre propre.Le FormBuilder aide pour les textareas est appelé
text_area
. FormBuilder les aides sont plus intelligents que d'ordinaire HTML helpers. Rails de modèles peuvent être imbriquées logiquement, et de vos formes peut être écrit afin de refléter cette; l'une des principales choses FormBuilder aides faire est de garder une trace de la façon dont chaque domaine particulier se rapporte à votre modèle de données.Lorsque vous appelez
f.text_area
depuisf
est associé à un formulaire nommé:ad
et le champ est nommé:text
il va générer un champ nomméad[text]
. C'est un paramètre de la convention qui sera automatiquement analysée dans une table de Hachage sur le serveur:{ :ad => { :text => "value" } }
au lieu d'une simple liste de paramètres. C'est un énorme avantage car si vous avez un Modèle nomméAd
vous pouvez simplement appelerAd.create(params[:ad])
et tous les champs sont remplis correctement.text_area_tag
est le générique de l'assistant, qui n'est pas connecté à un formulaire automatiquement. Vous pouvez toujours faire les mêmes choses queFormBuilder#text_area
mais vous devez le faire manuellement. Cela peut être utile dans les situations qu'un FormBuilder helper n'est pas destiné à couvrir.