उम्मीद है कि मैं इसे अच्छी तरह से समझा सकता हूं, लेकिन अगर अधिक जानकारी की आवश्यकता है तो कृपया मुझे बताएं!फ़िल्टर श्रृंखला [: login_required] rendered_or_redirected
मैं एक ऐसा फॉर्म बना रहा हूं जहां कोई उपयोगकर्ता "घटना" बना सके।
- belongs_to: ग्राहक (ग्राहक has_many घटनाओं)
- belongs_to: उपयोगकर्ता (उपयोगकर्ता has_many घटनाओं)
- has_one: incident_status (incident_status घटना के अंतर्गत आता है)
इस घटना के बाद रिश्ते हैं फॉर्म उपयोगकर्ता को घटना (उपयोगकर्ता का चयन करें) को घटना सौंपने की अनुमति देता है और फिर घटना की स्थिति का चयन करता है। घटना ग्राहक में घोंसला है।
हालांकि, मैं हो रही है सर्वर लॉग में निम्नलिखित:
Processing IncidentsController#create (for 127.0.0.1 at 2010-04-26 10:41:33) [POST]
Parameters: {"commit"=>"Create", "action"=>"create",
"authenticity_token"=>"YhW++vd/dnLoNV/DSl1DULcaWq/RwP7jvLOVx9jQblA=",
"customer_id"=>"4", "controller"=>"incidents", "incident"=>{"title"=>"Some Bad Incident",
"incident_status_id"=>"1", "user_id"=>"2", "other_name"=>"SS01-042310-001"}}
User Load (0.3ms) SELECT * FROM "users" WHERE ("users"."id" = 2) LIMIT 1
Redirected to http://localhost:3000/session/new
Filter chain halted as [:login_required] rendered_or_redirected.
Completed in 55ms (DB: 0) | 302 Found [http://localhost/customers/4/incidents]
ऐसा लगता है कि यह, यह पहले से ही आईडी है, भले ही (जो सभी यह है उपयोगकर्ता के बारे में जानकारी इकट्ठा करने के लिए कोशिश कर रहा है मेरे लिए लग रहा है घटना को बनाने की जरूरत है), और उपयोगकर्ता को इस तरह का चयन कथन करने की अनुमति नहीं हो सकती है? मैं उलझन में हूँ।
यहां घटना नियंत्रक में प्रासंगिक (मुझे लगता है) जानकारी है।
before_filter :login_required, :get_customer
def new
@incident = @customer.incidents.build
@users = @customer.users
@statuses = IncidentStatus.find(:all)
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @incident }
end
end
def create
@incident = @customer.incidents.build(params[:incident])
respond_to do |format|
if @incident.save
flash[:notice] = 'Incident was successfully created.'
format.html { redirect_to(@incident) }
format.xml { render :xml => @incident, :status => :created, :location => @incident }
else
format.html { render :action => "new" }
format.xml { render :xml => @incident.errors, :status => :unprocessable_entity }
end
end
end
बस एक एफवाईआई के रूप में, मैं restful_authentication प्लगइन का उपयोग कर रहा हूं।
तो संक्षेप में, जब मैं घटना निर्माण फॉर्म जमा करता हूं, तो यह घटना को सहेजता नहीं है क्योंकि यह रोकता है। मैं अभी भी रेल के लिए बहुत नया हूं, इसलिए इस तरह की समस्याओं का निदान करने में मेरा कौशल अभी भी बहुत बुरा है। मैं सर्कल में जा रहा हूँ। :)
किसी भी मदद के लिए अग्रिम धन्यवाद। यदि अधिक जानकारी की आवश्यकता है तो कृपया मुझे बताएं और मैं इसे संपादित कर दूंगा!
धन्यवाद। वह चाल है! – Magicked