मेरे आवेदन के लिए, मेरे पास उपयोगकर्ता खाते हैं जो लोग साइन अप कर सकते हैं। मैं सेटअप के लिए devise
मणि का उपयोग करता हूं।रेल - देवताओं के तहत बनाए गए उपयोगकर्ताओं को कैसे नष्ट करें?
मेरे पास एक उपयोगकर्ता पृष्ठ भी है जो destroy
लिंक के साथ साइट पर पंजीकृत सभी उपयोगकर्ताओं को सूचीबद्ध करता है। मैं चाहता हूं कि मेरा व्यवस्थापक उपयोगकर्ताओं को हटाने में सक्षम हो और इसे इस पृष्ठ सूची पृष्ठ पर रीडायरेक्ट कर दे। लेकिन जब मैं किसी विशिष्ट उपयोगकर्ता को नष्ट करने के लिए लिंक पर क्लिक करता हूं, तो यह केवल उपयोगकर्ता प्रोफ़ाइल पेज पर रीडायरेक्ट करता है और उपयोगकर्ता को डेटाबेस से हटा नहीं देता है।
क्या किसी को पता है क्यों?
** अद्यतन: अनुशंसित कोड के रूप में नीचे अपडेट किया गया कोड और अब काम करता है।
users_controller.rb
def destroy
@user = User.find(params[:id])
@user.destroy
if @user.destroy
redirect_to root_url, notice: "User deleted."
end
end
उपयोगकर्ताओं/index.html.erb
<div class = "container">
<div id="usersview">
<b>USERS DIRECTORY</b>
<%= render @users %>
</div>
<center>
<%= will_paginate @users %>
</center>
</div>
उपयोगकर्ताओं/_user.html.erb
<div class="comments">
<%= link_to user.name, user %>
<% if current_user.try(:admin?) && !current_user?(user) %>
<%= link_to "Destroy", admin_destroy_user_path(user), method: :delete, data: { confirm: "You sure?" } %>
<% end %>
</div>
routes.rb
devise_for :users
match 'users/:id' => 'users#destroy', :via => :delete, :as => :admin_destroy_user
match 'users/:id' => 'users#show', as: :user
resources :users
मैंने अपडेट किया (प्रश्न संपादित देखें) जैसा कि आपने नोट किया लेकिन एक ही परिणाम।पृष्ठ को दिखाने के लिए नष्ट नहीं कर रहे हैं और मार्ग। क्या यह संभव है कि मेरे मार्ग सही क्रम में नहीं हैं? – spl
'devise_for' कॉल के ऊपर कस्टम मार्ग रखने का प्रयास करें। – AlexBrand
मुझे नहीं लगता कि आपको 'संसाधनों की आवश्यकता है: उपयोगकर्ता' – AlexBrand