पर देखने की कोशिश कर रहा है, मुझे अपनी परियोजना में अधिक रिश्ते जोड़ने के बाद यह अनुवर्ती त्रुटि मिल रही है। स्थानीयहोस्ट पर, पृष्ठ पूरी तरह से ठीक दिखाता है। हालांकि, उसे हेरोकू पर देखने का प्रयास करते समय मुझे एक त्रुटि मिलती है।चयन डिस्टिंट के लिए पीजी त्रुटि, अभिव्यक्तियों द्वारा आदेश को चुनिंदा सूची में प्रकट होना चाहिए जब हेरोकू
ActiveRecord::StatementInvalid (PG::Error: ERROR: for SELECT DISTINCT, ORDER BY expressions must appear in select list
यहाँ मेरी traveldeal नियंत्रक है:
def show
@traveldeal = @commentable = Traveldeal.find(params[:id])
@comments = Comment.all
@title = @traveldeal.title
@eventdeals = Eventdeal.tagged_with(@traveldeal.location_tag_list, :any => true, :order => 'RANDOM()', :limit => 3)
end
traveldeal/show.html
<% unless @eventdeals.blank? %>
<h1>Events in the area:</h1>
<% @eventdeals.each do |eventdeal| %>
<%= link_to eventdeal do %>
<!-- content -->
<% end %>
<% end %>
<% end %>
Heroku लॉग
SELECT DISTINCT eventdeals.* FROM "eventdeals" JOIN taggings event_taggings_e9f0e2e ON event_taggings_e9f0e2e.taggable_id = eventdeals.id AND event_taggings_e9f0e2e.taggable_type = 'Eventdeal' WHERE (event_taggings_e9f0e2e.tag_id = 1 OR event_taggings_e9f0e2e.tag_id = 3 OR event_taggings_e9f0e2e.tag_id = 4 OR event_taggings_e9f0e2e.tag_id = 5) ORDER BY RANDOM()):
इस कोड को w था ऑर्किंग ताकि मैंने केवल 3 यादृच्छिक घटनाओं को प्रदर्शित किया जो मिलान स्थान के साथ मिलान किए गए स्थान (एक्ट-ए-टैगगेल-ऑन के माध्यम से)।
हालांकि, मैंने रिश्ते को जोड़ने के बाद (घटनाओं से संबंधित लेकिन ट्रैवलडेल्स से संबंधित), मुझे पीजी त्रुटि प्राप्त करना शुरू कर दिया।
trip.rb
class Trip < ActiveRecord::Base
has_many :eventdealtrips, :dependent => :destroy
has_many :eventdeals, :through => :eventdealtrips
end
eventdeal.rb
class Eventdeal < ActiveRecord::Base
has_many :eventdealtrips
has_many :trips, :through => :eventdealtrips, :dependent => :destroy
end
eventdealtrip.rb
class Eventdealtrip < ActiveRecord::Base
belongs_to :eventdeal
belongs_to :trip
end
पर कैसे किसी भी सलाह:
यहाँ रिश्तों कि जोड़ दिया गया हैं मैं stil कर सकते हैं मैं 3 eventdeals की एक यादृच्छिक सरणी मिलता है?
धन्यवाद।
बिल्कुल यकीन नहीं है कि मैं आपका अनुसरण कर रहा हूं। मैंने अपने पोस्टोकू लॉग में विवरण के साथ अपनी पोस्ट अपडेट की। – Huy
आईडी एक और स्पष्ट उत्तर की तरह है, मुझे एक ही समस्या है। मैं सिर्फ अपनी क्वेरी के क्रम को यादृच्छिक बनाना चाहता हूं। – rugbert