ruby on rails-Formular und übergeben der parameter-controller
Wenn die view übergeben Sie den Parameter-controller
controller wird null für alle den Argumenten irgendwie.
Kann jemand, wie man dieses Problem beheben?? Danke!
und ich habe kein Modell mit der Bezeichnung "Nachricht"
Controller/messages_controller.rb
def deliver
recipient = User.find_by_username(params[:recipient])
subject = params[:subject]
body = params[:body]
current_user.send_message(recipient, body, subject)
redirect_to :controller => 'messages', :action => 'received'
flash[:notice] = "message sent!"
end
views/Nachrichten/neue.html-Code.erb
<%=form_for :messages, url: url_for( :controller => :messages, :action => :deliver ) do |f| %>
<div class="field">
<%= f.label :subject %><br />
<%= f.text_field :subject %>
</div>
<div class="field">
<%= f.label :body %><br />
<%= f.text_field :body %>
</div>
<div class="actions">
<%= f.submit %>
<% end %>
InformationsquelleAutor MKK | 2012-07-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Überprüfen Sie Ihre HTML-Quelle, um besser zu verstehen, was FormHelpers tun.
Mit der
form_for
f.text_field
generieren, die Namen der Attribute in das format:Daher, Ihre Parameter werden im format:
Können Sie auch
<%= debug params %>
zu untersuchen, was params, ist es sehr hilfreich.Ich war Erster 😉
InformationsquelleAutor Wawa Loo
Können Sie get-parameter-Wert mit
datas = params[:messages]
Diese Werte werden in array-form. So können Sie fetch array
datas
Wenn Sie wollen, um die einzelnen Daten dann verwendensubject = datas[:subject]
body = datas[:body]
Um zu überprüfen, führen Sie folgenden code in der Ansicht
<%= subject %>
dies gibt den Wert des Subjekts.
InformationsquelleAutor Ganesh Kunwar