我将 Rails 4.1 与 Postgres 一起使用,并且我有一个这样的模型:
class User < ActiveRecord::Base
has_many :events
has_many :event_memberships
has_many :shared_events, through: :event_memberships, source: event
def all_events
#... code goes here
end
end
Run Code Online (Sandbox Code Playgroud)
我想在事件和 shared_events 关联之间进行联合,但我无法让它工作。
我唯一能让它工作的是:
def all_events
events + shared_events
end
Run Code Online (Sandbox Code Playgroud)
但它将执行 2 个 SQL 查询而不是一个,我将无法对结果进行排序或限制。
我也尝试过这样的事情:
def all_events
User.find_by_sql("(#{events.to_sql}) UNION (#{shared_events.to_sql})")
end
Run Code Online (Sandbox Code Playgroud)
或者这个方法https://coderwall.com/p/9hohaa 但是这两种方法都会抛出这个错误:
PG::UndefinedParameter: ERROR: there is no parameter $1
Run Code Online (Sandbox Code Playgroud)
这似乎是 rails 4+ 中的已知错误,无法解决https://github.com/rails/rails/issues/13686
所以我这里唯一的选择似乎是编写普通的旧 SQL。有人有更好的主意吗?
我正在寻找一种替代普通HTML多选的方法,基于JQuery更易于用户使用,并且更易于维护和实现,任何基于任何经验的推荐都会非常有用.我需要像Multiselect这样的东西
我可能在一个页面上有多个multiSelect下拉列表,在这种情况下我附加的链接将失败.