我正在从WebORB变为Warhammerkids Rails3-amf--很棒的选择,甚至是一些开放的问题。其中一个问题是,如何从关联到数组获取记录,然后将其发送回Flex-Application。 在WebORB中,控制器的方法如下:
def getClients(clientFilter,myMandant)
clients = Client.find(:all, :conditions => {:account_id => myMandant}, :include => [:addresses, :contacts, :proofs])
end
在Rails3-amf中我有类似的结构:
def getClients()
@clients = Client.find(:all, :conditions => {:account_id => params[1]}, :include => [:addresses, :contacts, :proofs])
respond_with(@clients) do |format|
format.amf { render :amf => @clients}
end
使用此代码,我将所有正确键入的客户端对象作为数组返回,但没有来自“:include”参数的记录。 我怎么能处理这个?
我还尝试了另一种方式:
....
respond_with(@clients) do |format|
format.amf { render :amf => @clients.to_amf(:include => [:addresses, :contacts, :proofs])}
....
通过这次尝试,我得到了一条错误消息“未定义方法to_amf for#。
感谢您的帮助。
答案 0 :(得分:1)
我不知道有关rail3-amf的信息,但你可能会发现看看restfulx是值得的 - https://github.com/dima/restfulx/tree/rails3
它包含一个用于rails的库和一个用于flex的库。它支持通过json,xml或amf进行数据传输。
使用模型的actionscript api也非常好:
var user:User = new User();
user.first_name = "Ed";
user.create();
它还可以跟踪rails关联等。:
trace(user.account.title);
在此处查看更多用法 - https://github.com/dima/restfulx_framework/wiki/Working-with-RestfulX-Models