Rails3-amf并将关联带到amf

时间:2011-01-18 19:47:23

标签: ruby-on-rails flex weborb rubyamf

我正在从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#。

感谢您的帮助。

1 个答案:

答案 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