Cześć wszystkim! Piszę do Was z takim problemem, bowiem mam problem odnośnie paramsów, które dziwnym trafem trafiają do GET. Mój adres wygląda mniej więcej w ten sposób:
Natomiast w logach wyrzuca mi do akcji ‘new’ - choć nie wiem dlaczego:
Started GET "/kontakt?utf8=%E2%9C%93&authenticity_token=ne6DIuvsQbDNfSHL9uMqc1eKYwR52sFKT05njJAk7Ag%3D&contact%5Bname%5D=&contact%5Bemail%5D=&contact%5Bsubject%5D=&contact%5Bmessage%5D=assdadasasddasasdas&_wysihtml5_mode=1&commit=Wy%C5%9Blij+wiadomo%C5%9B%C4%87" for 127.0.0.1 at 2012-05-06 15:28:43 +0200
Processing by ContactsController#new as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"ne6DIuvsQbDNfSHL9uMqc1eKYwR52sFKT05njJAk7Ag=", "contact"=>{"name"=>"", "email"=>"", "subject"=>"", "message"=>"assdadasasddasasdas"}, "_wysihtml5_mode"=>"1", "commit"=>"Wyślij wiadomość"}
Rendered contacts/new.html.haml within layouts/application (24.6ms)
User Load (0.5ms) SELECT "users".* FROM "users" WHERE "users"."id" = 1 LIMIT 1
Rendered layouts/inc/_header.html.haml (12.7ms)
Rendered layouts/inc/_login_form.html.haml (6.1ms)
Rendered layouts/inc/_thrust.html.haml (0.1ms)
Completed 200 OK in 67ms (Views: 65.6ms | ActiveRecord: 0.5ms)
Moje routingi wyglądają w ten sposób:
➜ app git:(bangeusz-dev) ✗ CONTROLLER=contacts rake routes
contacts GET /contacts(.:format) contacts#index
POST /contacts(.:format) contacts#create
new_contact GET /contacts/new(.:format) contacts#new
edit_contact GET /contacts/:id/edit(.:format) contacts#edit
contact GET /contacts/:id(.:format) contacts#show
PUT /contacts/:id(.:format) contacts#update
DELETE /contacts/:id(.:format) contacts#destroy
contact /kontakt(.:format) contacts#new
Form wygląda tak:
= form_for @contact do |f|
A kontroler tak:
[code]# encoding: utf-8
class ContactsController < ApplicationController
def new
@contact = Contact.new
end
def create
@contact = Contact.new(params[:contact])
if @contact.save
redirect_to root_path, :notice => “Zgłoszenie zostało wysłane.”
else
render :action => ‘new’
end
end
end[/code]
Generalnie powinno to wyglądać w ten sposób, że z forma lecimy do akcji create poprzez POST i dzieje się to, co tam mam w akcji, nie mam pojęcia z jakiej racji wyrzuca mi całość do GET oraz wykonuje akcje ‘new’.
Jakieś pomysły?