In Ihrem Fall scheint es, weil Sie @comments.to_sql
verwenden Sie ziehen diese vorbereitete Anweisung in Ihre Unterauswahl, ohne den Parameter dafür einzufügen. Sie können versuchen, einfach die Kommentardaten wie folgt einzufügen:
@comments = current_clinician.comments.select('ON (patient_id) *').uniq.order("patient_id, created_at DESC").include(:comment)
@comment_list = @comments.include(:comment)
Dieses Problem scheint auch auf die Art und Weise zurückzuführen zu sein, wie die vorbereiteten Anweisungen in Rails erstellt werden, und könnte durch Probleme in Rails selbst verursacht werden (Rails-Problem #15920 , das in Rails 4.2 behoben wurde) oder durch Probleme mit verschiedenen Gems, die beim Generieren von Abfragen helfen (Beispiel:Rails-Problem #20236 ) oder sogar durch die Art und Weise, wie Sie Ihre Modellzuordnungen definieren (Rails Issues #12852 ). ).
Es ist möglich, vorbereitete Anweisungen einfach vollständig zu deaktivieren, indem Sie eine Direktive zu Ihrer database.yml
hinzufügen Datei:
production:
adapter: postgresql
database: prod_dbname
username: prod_user
password: prod_pass
prepared_statements: false
Aber zuerst sollten Sie überprüfen und sicherstellen, dass Sie keine unnötigen Parameter wie diese in Ihren Modellzuordnungen verwenden:
class DashboardTab < ActiveRecord::Base
has_many :dashboard_tab_feeds, foreign_key: :dashboard_tab_id, dependent: :destroy
has_many :social_feeds, through: :dashboard_tab_feeds
end
class DashboardTabFeed < ActiveRecord::Base
belongs_to :social_feed
belongs_to :dashboard_tab
end
class SocialFeed < ActiveRecord::Base
has_many :dashboard_tab_feeds, foreign_key: :social_feed_id, dependent: :destroy
end
...wobei foreign_key
einfach weggelassen werden sollte , etwa so:
class DashboardTab < ActiveRecord::Base
has_many :dashboard_tab_feeds, dependent: :destroy
has_many :social_feeds, through: :dashboard_tab_feeds
end
class DashboardTabFeed < ActiveRecord::Base
belongs_to :social_feed
belongs_to :dashboard_tab
end
class SocialFeed < ActiveRecord::Base
has_many :dashboard_tab_feeds, dependent: :destroy
end