ruby-on-rails - 休息和 rails : What is the best way to show different views for a given resource and action?

标签 ruby-on-rails rest

我有一个资源,库存,需要根据上下文“显示”大约 4 种不同的方式。解决这个问题的最佳方法是什么?

我在想我可以传入一个参数 (param[:context]) 来让“show” Action 呈现正确的 View 。或者也许我应该制作另一个 Controller ,尽管这看起来有点多。当您想保持 RESTful 但您的资源需要以多种不同方式显示时,最佳实践/一般准则是什么?

最佳答案

这个问题很棘手,因为有很多选择,但答案取决于你想做什么。

上下文是否代表模型中的某些内容?那么你应该使用不同的模型和不同的 Controller 。

上下文是否表示 REST 操作以外的其他内容?添加自定义 REST 操作( http://railscasts.com/episodes/35-custom-rest-actions )及其各自的路线(在我看来,您在这里尝试执行的操作)。

View 是否相同,只是标记不同?您可以使用 Cells ( http://cells.rubyforge.org/ ) 来抽象您的演示文稿模式。

如果您不想破坏 RESTful 状态,我强烈反对创建多个操作,但最终这也可以是一个解决方案。

关于ruby-on-rails - 休息和 rails : What is the best way to show different views for a given resource and action?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3454469/

相关文章:

java - 使用 Java 和 REST 发送 Apple 推送通知时出现问题

php - jQuery .ajax : How to handle Custom Validation Error Message, REST API,400 状态代码?

ruby-on-rails - Rails 中带有 text_field 的逗号分隔数组

rest - 如何获取sails中action2中的查询参数

java - 使用JERSEY和JACKSON解析未知结构的POST请求

ruby-on-rails - 无法加载此类文件 -- ruby​​gems.rb

web-services - 自定义链接关系的 RESTful Web 服务使用 - 'rel'

ruby-on-rails - 在 cygwin 中安装 Rails 时出现问题

ruby-on-rails - 如何使用 rake db :seed? 将外部数据添加到数据库

css - Will_paginate 不渲染 Ruby On Rails