【发布时间】:2021-11-14 15:37:14
【问题描述】:
我正在尝试调用我的 json 端点,以将所有作业返还给我,其中志愿者_shift.date 位于 params[:start] 和 params[:end] 之间
有没有办法在 assignments_controller 的 index 方法中做到这一点?
我目前在控制器的 index 方法中有这个,但它在我面前爆炸了......
assignments_controller.rb
def index
@assignments = Assignment.where(volunteer_shift.date: params[:start]..params[:end]) <--- HOW To DO this?
end
这是我的作业模型的样子...
assignment.rb
class Assignment < ApplicationRecord
belongs_to :volunteer_shift
def event_date
self.volunteer_shift.date
end
...
end
在我的 Volunteer_shift 模型中,我有一个“日期”方法
volunteer_shift.rb
class VolunteerShift < ApplicationRecord
has_many :assignments
belongs_to :volunteer_event
...
def date
self.volunteer_event.date
end
end
有没有办法可以取回所有的作业,其中志愿者_shift.date(或 assignment.event_date)在 params[:start] 和 params[:end] 之间?
注意:Rails 5
【问题讨论】:
-
你试试这个sql:Assignments.where('volunteer_shift.date BETWEEN ? AND ?', params[:start], params[:end])
-
现在这样说:“PG::UndefinedTable: 错误:缺少表“volunteer_shift”的 FROM 子句条目注意:“日期”列实际位于志愿者事件中。volunter_event 是志愿者移位中的列跨度>
标签: ruby-on-rails