2013-01-23 54 views
0

我在rails應用程序中使用jquery fullcalendar。 目前它在月份顯示中顯示event.title字段。我想它也顯示和額外的字段= workorder.wonumRails jquery fullcalendar無法在事件中顯示額外字段

我在Stackoverflow找到了這個解決方案。

eventRender: (event, element) -> 
    element.find(".fc-event-title").html(event.title + ": <span>" + event.workorder.wonum + "</span>") 

該代碼顯示event.title,然後顯示「未定義」。如果我將event.workorder.wonum更改爲event.description - >可以。

我可以通過更改json創建的控制器中的event.title來做到這一點嗎?

像這樣的東西(它不工作):

respond_to do |format| 
    format.json { render json: @events, :only => [:title => :title + :workworder.wonum] } 
end 

謝謝!

+0

在上面的代碼中,你有'event.workorder_num',不'_id' ??? – MaxD

+0

我的錯字 - 感謝您指出 - 我更新了問題 – Reddirt

回答

1

我終於明白了。

的解決方案是在workorder.wonum與冠軍相結合:

# need to override the json view to return what full_calendar is expecting. 
# http://arshaw.com/fullcalendar/docs/event_data/Event_Object/ 
def as_json(options = {}) 
    { 
    :id => self.id, 
    :title => "#{self.workorder.wonum} #{self.title}", 
    :description => self.description || "", 
    :start => starts_at.rfc822, 
    :end => ends_at.rfc822, 
    :allDay => self.all_day, 
    :recurring => false, 
    :url => Rails.application.routes.url_helpers.event_path(id), 
    :color => "blue", 
    :backgroundColor => "blue", 
    :borderColor => "black", 
    :textColor => "white" 
} 

end