Rails是从Flex应用程序接收XML数据的最佳方式

w80xi6nr  于 2022-09-21  发布在  Apache
关注(0)|答案(1)|浏览(139)

有谁能给我一些提示吗?我可以在我的SWF文件上显示XML内容,但是如何将更改后的XML文件发送回我的Rails服务器呢?

提前谢谢!马库斯

f0brbegy

f0brbegy1#

RestfulX是目前为止使用rails:)实现这一点的最佳方法。

Check out their cool examples开始运行需要5分钟。您可以基于模型(如页面/帖子/评论/类别...)生成应用程序它将看起来像这样:

(来源:github.com)

你只需运行3个命令,你就有了一个完整的CMS。而且,默认情况下,所有事情都是通过XML实现的,但它是在XML之间进行转换(序列化和反序列化)的,因此您可以在ActionScript中使用类对象。如果需要,您可以很容易地将其更改为AMF/JSON,这是非常强大的。然后,您可以从那里定制一切:创建一个类(MyVideo),添加属性(标题、URL、描述、注解),在ActionScript中操作它们,然后只需执行创建/更新/销毁/保存/显示,它就可以处理进出Rails的所有XML请求。

它们已经解决了身份验证和会话管理、文件上传、嵌套集合和列表等核心问题,您可能已经或将要遇到这些问题。非常酷。

一切都通过REST(和CRUD操作)工作,而Rails充分利用了这一点。如果您只想使用Ruby(而不是Rails),您可以做到这一点没有问题。或者,如果您只想使用Flex,没有后端,但仍然想读/写XML,而不必创建整个库来处理,同样的事情;它们都可以处理。

您只需执行以下操作:

Rx.models.index(Project)(如果您有一个my.package.Project类),它将返回:

<?xml version="1.0" encoding="UTF-8"?>
  <projects type="array">
    <project>
      <completed type="boolean">false</completed>
      <created_at type="datetime">2008/07/09 20:08:28</created_at>
      <end_date type="date">2008/07/09</end_date>
      <id type="integer">490909803</id>
      <name>Project4NameString</name>
      <notes>Project4NotesText</notes>
      <start_date type="date">2008/07/09</start_date>
      <updated_at type="datetime">2008/07/09 20:08:28</updated_at>
      <user_id type="integer">276171944</user_id>
  </project>
</projects>

然后,如果您想要保存(或删除)它,您只需执行如下操作:

var projects:IList = Rx.models.index(Project);
var project:Project = projects.getItemAt(0); // first item in IList;
project.title = "My New Title!";
project.save();

// then later, maybe onClick for a Button with label "Delete Project"...
project.delete();

这是迄今为止最适合处理XML的库。他们有一个very active group,这是一个加号。

我看到你问this question about writing xml via Flex。你会遇到很多边缘案例。试试RestfulX,它太恶心了。

希望这能帮上忙。

相关问题