【发布时间】:2020-04-09 00:48:31
【问题描述】:
如何在 Rails 中将 id 附加到完整日历事件 url?
我有一个 json.jbuilder
json.array!(@estudiante.clases) do |clase|
json.extract! clase, :id
json.id clase.id
json.title clase.name
json.start clase.start
json.end clase.end
json.dow [1, 4]
json.url listar_clases_estudiante_url(clase, format: :html)
end
还有一个完整的 Javascript:
var initialize_calendar;
initialize_calendar = function() {
$('.calendar').each(function() {
var calendar = $(this)
calendar.fullCalendar({
defaultView: 'agendaWeek',
events: '/estudiantes/listar_clases.json'
});
})
};
$(document).on('turbolinks:load', initialize_calendar);
问题是事件是从 url /estudiantes/listar_clases.json 检索的。但我希望网址为/estudiantes/listar_clases/{whatever_the_estudiante_id_is}.json
例如:
/estudiantes/listar_clases/1.json 或/estudiantes/listar_clases/7.json,更改号码为@estudiante.id。
那么我如何将 estudiante id 传递给 json events url?
谢谢。
【问题讨论】:
-
您需要设置相应的路由和控制器操作,以便允许此类带有 ID 的请求。此外,这些路线看起来也不是很 RESTful。最好有一条路线 GET /estudiantes/1/clases。附加路由和接收请求的控制器,以便我可以为您提供更多详细信息。
-
来自 routes.rb:
get 'estudiantes/listar_clases/:id', to: 'estudiantes#listar_clases', as: 'listar_clases_estudiante'。而在estudiantes_controller.rb中,函数listar_clases为空。
标签: javascript ruby-on-rails json