Ruby on rails RubyonRails REST设计问题-账户间转账
我有一个帐户类,想实现转账屏幕,允许用户在两个帐户之间转账 我将如何完全实现这一点 我有标准的帐户和休息动作,这很好。但我将如何实施转移 通常我只会向accounts controller和相应的视图添加一个名为“transfer”(调用以呈现屏幕)和“transfer_update”(在提交时调用)的方法,但我认为这不是很完整 谢谢 Joel这本书提供了一个很好的例子,说明了如何解决这个确切的问题,更好的是,Rails中的例子:)Ruby on rails RubyonRails REST设计问题-账户间转账,ruby-on-rails,rest,accounting,Ruby On Rails,Rest,Accounting,我有一个帐户类,想实现转账屏幕,允许用户在两个帐户之间转账 我将如何完全实现这一点 我有标准的帐户和休息动作,这很好。但我将如何实施转移 通常我只会向accounts controller和相应的视图添加一个名为“transfer”(调用以呈现屏幕)和“transfer_update”(在提交时调用)的方法,但我认为这不是很完整 谢谢 Joel这本书提供了一个很好的例子,说明了如何解决这个确切的问题,更好的是,Rails中的例子:) 如果你不能从图书馆借书,那就买吧。它没有那么昂贵,而且它有很多
如果你不能从图书馆借书,那就买吧。它没有那么昂贵,而且它有很多关于如何实现REST和ROA的有用信息。您提到了您的Account类,但没有提到表示帖子或日记的类。见() 使用所引用站点的语言,为转账创建的“资源”是一个日记账(条目),由两个过账组成,每个过账到不同的账户。所以你需要一个JournalsController。要添加传输,您需要将其发布到JournalsController的索引操作。参数包括日期、金额、借方账户、贷方账户、收款人、备忘录等
使用REST on AccountsController将用于创建、更新或删除帐户,而不是帐户包含的过帐(事务)。执行传输的restful请求示例
POST /transfers HTTP/1.1
Host: restful.bank.com
Content-Type: application/json; charset=utf-8
Accept: application/json
{ "transfer": {
"source_account_id": "9d2d894c242f391a",
"destination_account_id": "83ac039d8302abd5"
"amount": "$200.00"
} }
相应的反应
HTTP/1.1 201 Created
Date: #{right-now}
Content-Type: application/json; charset=utf-8
Location: https://restful.bank.com/transfers/938ac39cb5ddccfa
{ "transfer": {
"id": "938ac39cb5ddccfa",
"href": "https://restful.bank.com/transfers/938ac39cb5ddccfa",
"source_account_id": "9d2d894c242f391a",
"destination_account_id": "83ac039d8302abd5"
"amount": "$200.00"
} }
但是这里使用了动词“transfer”,这不是表示它不是REST吗?@jhegedus“transfer”一词在这里用作名词,而不是动词。