随着学习的深入,Rails 3带给我的惊喜越来越多。respond_with实在是个好东西,最初是在一篇大牛的博客中看到这个东西。不过奇怪的是在api.rubyonrails.org中找不到它的说明。刚刚又看了一片关于respond_with的博客《respond_with in Rails 3》
,写的很详细。
以前用respond_with,感觉总是模模糊糊的,一直以为:location是一个类似前缀的东西。
当看到“当数据保存成功后,它自动跳转到@story对应的显示页面,当保存失败后,会自动render的@story的new页面。”突然好像明白了,:location的值会不会就是成功要显示的页面?马上去实验了一下,果然!我在location的地方传了一个'http://google.com'进去,保存成功就看到Google了。
怎么感觉自己越活越笨了呢,要费这么大事才能明白这么简单的东西。
++++++++++++++++++++++++++++++
2011-03-16新增
++++++++++++++++++++++++++++++
在实际的使用当中,常常会到namespace,如果按照前面说的方法,加一个:location,例如:
respond_with @order, :location => store_order_url(@order)
希望订单创建成功后显示订单,当你像上面这样写的时候,会得到一个错误:
Routing Error
No route matches {:action=>"show", :id=>#<Order id: nil, ……>, :controller => "store/orders"}
查了好多资料,发现原来对于namespace有一种更方便的写法:
respond_with :store, @order
如果,还想重定向到列表页,就这样写:
respond_with :store, @order, :location => store_orders_url
恩,终于搞定了
分享到:
相关推荐
在使用Apache HttpClient进行HTTP通信时,可能会遇到"HttpClient问题:The server failed to respond with a valid HTTP resp"这样的异常。这个错误通常表示服务器未能返回一个有效的HTTP响应,这可能是由多种原因...
安装将此行添加到您的应用程序的Gemfile中: gem 'as_csv' , '~> 2.0'基本用法只需在控制器中添加respond_to :csv class WidgetsController < ApplicationController respond_to :xml , :json , :csv def index ...
JsonApi响应者 该gem提供了一些使用JSONAPI的便捷方法。 它的灵感来自宝石。 安装 将此行添加到您的应用程序的Gemfile中: gem 'json_api_responders' ...该gem带有以下两个方法respond_with和respond_with_er
使用respond.With响应数据API的respond.With 使用respond.With使用默认选项进行respond.Options ,或进行respond.Options 。编码器抽象使您可以轻松地说出不同的格式Before和After功能字段允许您封装和变异数据,...
尽管这两个方法在功能上相同,但使用 Should 语句的写法更符合人类语言习惯,使得代码更加直观。 #### 三、上下文(Context) 上下文是 Shoulda 中的一个核心概念,它允许开发者定义一系列特定条件下的测试场景。每...
可以使用`select_tag`或`collection_select`辅助方法,结合JavaScript(例如jQuery)来实现动态加载。假设我们有`regions`控制器和`show`动作,视图可以这样写: ```erb <%= form_with(model: @selected_region, ...
可消隐的 将空白面板添加到索引视图 ... respond_with ( @customers ) end end # views/customers/_list.html.haml % table % tr % th Name % th Business Phone % th Mobile Phone % th Addres
综上所述,《Beginning Google Maps Applications with Rails and Ajax》这本书为初学者提供了一条清晰的学习路径,从基础概念到实践案例,全面覆盖了如何使用Google Maps API、Rails以及Ajax技术创建高质量的地图...
AJAX并非一种单一的技术,而是一种使用JavaScript、XML(或者JSON)以及异步通信技术来创建动态网页的方法。它打破了传统的网页浏览模式,用户可以在交互时无需等待页面的完整加载,提高了应用程序的响应速度和交互...
7. **模版方法模式**:ActionController中的`respond_to`和`respond_with`方法是模版方法模式的示例。它们定义了处理请求的基本步骤,而具体实现可以由子类(如具体的Controller)提供。 8. **依赖注入**:虽然Ruby...
与起源 TI 版本的区别: 从计算中添加了所有雷达参数,可以从rosparam get. 添加来自检测目标的多普勒数据并形成定制的 ROS 消息/ti_mmwave/radar_scan。...更多详情、使用方法,请下载后细读README.md文件
1. 在题干中,“Sean has formed the habit of jogging ______ the tree-lined avenue for two hours every day.”此题考察介词的用法。选项B "along" 表示“沿着”,符合句意,表示Sean沿着林荫大道慢跑。 2. 句子...
第二道例题中,短语"respond to"被拆分开,"To each parent here responded with the same line...",这里的"To"是短语"respond to"的一部分,表示"回应"。由于宾语"each parent"前置,动词"respond"后置,"to"仍然...
像下面的示例一样,在message_responder.rb使用on方法: def respond on /^ \/ start/ do answer_with_greeting_message end on /^ \/ command (.+)/ do | arg | #supports up to two arguments but it is ...
用法 Nenshi_bot > nenshi_bot helpNenshi_bot: help - Lists help information for terms and command the robot will respond to.Nenshi_bot: help COMMAND - Lists help information for terms or commands that ...
- 回应:respond - 动词,表示对某事做出反应或回答。 - 残酷的:cruel - 形容词,形容不人道或无情的行为。 2. 选词填空: - 选词填空的题目没有给出具体单词选项,但根据上下文,可能需要填写与友情、尊重、...
"With the good care taken by doctors and nurses, many patients are beginning to pick up." 表示病人在医生和护士的精心照料下开始恢复。其他选项"A. pick out"挑选,"B. turn up"出现,音量调大,"C. turn out...
折现现金流分析是评估投资项目价值的重要方法之一。使用Excel可以通过NPV函数计算净现值,通过IRR函数计算内部收益率等关键指标。这些分析对于判断投资项目是否可行至关重要。 #### 八、证券函数(Securities ...
**行为驱动开发 (BDD)** 是一种软件开发方法论,它鼓励团队成员(包括开发者、QA 和非技术人员)通过特定的格式来共同定义应用程序的行为。这种格式通常采用自然语言的形式,例如:“作为用户,我希望...以便于...”...
对…作出回应 respond with sth. 以…回应 14. response n. 回答;响应;反应;答复 prompt response 迅速的回复 在英语学习中,掌握这些单词的用法至关重要。例如,“delighted”一词,它表达的是极度的喜悦或...