如果我做类似的事情:
result = Appointment.find( :all, :include => :staff ) logger.debug { result.inspect }
那么它只会打印出约会数据,而不是相关的职员数据。如果我执行result [0] .staff.inpsect,那么我当然会得到人员数据。
问题是我想将它作为JSON(包括人员行)返回给AJAX。如何强制它包含人员行,还是必须遍历并手动创建内容?
:include是一种说法to_json,没有find。您需要在控制器中执行以下操作:
:include
to_json
find
def return_json @appointment = Appointment.find(:all) respond_to { |format| format.json { render :json => @appointment.to_json(:include => :staff) } } end
您需要在“约会”和“职员”之间建立关联才能正常工作。