मैं कोणीय जेएस की कोशिश कर रहा हूं और मैं अपने रेल अनुप्रयोग में परिभाषित घोंसला संसाधन से डेटा प्राप्त करना चाहता हूं।घोंसला संसाधनों के साथ कोणीय जेएस एनजी रिसोर्स
मैं निम्नलिखित लाइनों ने लिखा है:
UserMission = $resource("https://stackoverflow.com/users/:user_id/user_missions/:id", {user_id: "@user_id", id: "@id"}, {update: {method: "PUT"}})
$scope.user_missions = UserMission.query()
और मैं निम्नलिखित त्रुटि मिलती है:
Processing by UsersController#show as JSON
Parameters: {"id"=>"user_missions"}
User Load (0.6ms) SELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT 1 [["id", 1]]
User Load (0.5ms) SELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT 1 [["id", "user_missions"]]
Completed 404 Not Found in 10ms
ActiveRecord::RecordNotFound (Couldn't find User with id=user_missions):
app/controllers/users_controller.rb:100:in `current_resource'
app/controllers/application_controller.rb:34:in `authorize'
मेरे रेल मार्गों तो जैसे आयोजन किया जाता है:
resources :users do
resources :user_missions
end
मैं इसे आता है लगता है मुझे "@id" समझ में नहीं आता है। यह कहता है कि यह angularjs site से "डेटा ऑब्जेक्ट" से आता है और मुझे बिल्कुल यकीन नहीं है कि इसका क्या अर्थ है।
किसी भी मदद की सराहना की जाएगी धन्यवाद।
अद्यतन
एक और सवाल। मुझे $resource
के साथ नेस्टेड संसाधनों (एक उदाहरण उपयोगकर्ता has_many :missions, through: :user_missions
) का उपयोग करके कोणीय के साथ रेल के किसी भी उदाहरण नहीं मिला है। क्या AJAX के साथ नेस्टेड संसाधनों ($resource
के साथ) एंजुलरज का एक अच्छा उदाहरण है?
तो मैं अभी भी थोड़ा उलझन में हूं। मैं मूल ऑब्जेक्ट (उपयोगकर्ता) और बच्चे ऑब्जेक्ट (UserMission) से आईडी कैसे प्राप्त करूं और उन्हें Angularjs के साथ रेल ऐप में संसाधन में भेजूं और एक नेस्टेड रिलेशनशिप क्वेरी पूरी करूँ? – GTDev
अपनी सेवा डिफ़ॉल्ट मानकों को घोषित करके '{user_id:" @user_id ", id:" @id "} 'आप कह रहे हैं कि, जब कोई पैरामीटर वाले सेवा को कॉल करते हैं, तो उन्हें कॉल में आपके द्वारा पारित ऑब्जेक्ट से मूल्य प्राप्त होते हैं। आपके मामले में आप सेवा को 'UserMission.query()' के रूप में किसी भी पैरामीटर के साथ कॉल कर रहे हैं, लेकिन आप कोई मान नहीं दे रहे हैं, इसलिए सेवा को शून्य मानों के साथ बुलाया जाता है, इसलिए सर्वर को '/ उपयोगकर्ता/user_missions 'जो त्रुटि देता है। आपको कॉल में पैरामीटर मान शामिल करना चाहिए, जैसा कि मैंने अपने उत्तर में इंगित किया था। – remigio