रूबी पर रूबी में पैरामीटर कैसे प्राप्त करें? - रूबी-ऑन-रेल, रूबी

मैं material_sort_id का मान प्राप्त करना चाहता हूं

Started GET "/materials?utf8=%E2%9C%93&material%5Bmaterial_sort_id%5D=1&material%5Bbrand_id%5D=1&commit=%E6%9F%A5%E8%AF%A2" for 127.0.0.1 at 2015-05-28 16:06:34 +0800
Processing by MaterialsController#index as HTML
Parameters: {"utf8"=>"✓", "material"=>{"material_sort_id"=>"1", "brand_id"=>"1"}, "commit"=>"查询"}

यह मेरा कोड है:

puts params[:material_sort_id].present?

मुझे झूठा मिला मैं इसे कैसे लूं?

उत्तर:

उत्तर № 1 के लिए 6
params[:material][:material_sort_id]

आप इसे इस तरह प्राप्त कर सकते हैं


उत्तर № 2 के लिए 1
Loop
{
//Code
puts params[:material][:material_sort_id];
}

उत्तर № 3 के लिए 1

लॉग के अनुसार

"material" => {"material_sort_id"=>"1", "brand_id"=>"1"}, "commit"=>"查询"}

तुंहारे params[:material_sort_id] अंदर है "material" कुंजी ताकि आप सीधे "टी तक पहुंच सकें। यह आपके जैसा कुछ है 2 हैश 1 हैश कुंजी में एक और हैश शामिल है

e.g { "a" => { "b"=> "1", "c" => "2" } }

आप तक पहुंचने के लिए निम्नलिखित का उपयोग कर सकते हैं।

params[:material][:material_sort_id]

यह जांचने के लिए कि क्या यह मौजूद है या नहीं, आप निम्न का उपयोग कर सकते हैं।

params[:material][:material_sort_id].present?

जवाब के लिए 0 № 4

यह संभव हो सकता है कि यूआरएल में सामग्री हैश नहीं है। उस मामले में आप लिख सकते हैं

params[:material].try(:material_sort_id)

उपर्युक्त मामले में यह केवल सामग्री पर material_sort_id से पूछताछ करेगा यदि सामग्री हैश शून्य नहीं है। यदि यह शून्य नहीं है तो यह अपेक्षित परिणाम लौटाएगा और किसी भी त्रुटि के बदले झूठी वापसी होगी


संबंधित सवाल
सबसे लोकप्रिय