我在我的控制器中有这个代码,并希望通过功能测试来测试这个代码行.
raise ActiveRecord::RecordNotFound if @post.nil?
Run Code Online (Sandbox Code Playgroud)
我应该使用哪种断言方法?我使用内置的rails 2.3.5测试框架.
我用这段代码试了一下:
test "should return 404 if page doesn't exist." do
get :show, :url => ["nothing", "here"]
assert_response :missing
end
Run Code Online (Sandbox Code Playgroud)
但它对我不起作用.得到了这个测试输出:
test_should_return_404_if_page_doesn't_exist.(PageControllerTest):
ActiveRecord::RecordNotFound: ActiveRecord::RecordNotFound
app/controllers/page_controller.rb:7:in `show'
/test/functional/page_controller_test.rb:21:in `test_should_return_404_if_page_doesn't_exist.'
Run Code Online (Sandbox Code Playgroud) 如何在erb中使用yield进行模板继承?我想在一个普通的ruby CGI脚本中使用erb,并希望使用一个基本模板和子模板,就像它与应用程序模板一样Rails.
我有一个数据库字段,我想存储我的密码.在我的模型中的before_create过滤器中,我调用加密函数并从明文保存到加密文本.
我现在想要使用before_update进行加密,但仅限于值已更改.如何编写检查字段值是否已更改的条件?
我将在明年初(2010年)开始使用Rails开展一个大型新项目.有人可以给我建议我应该使用哪个版本的Rails以及为什么?
如何测试生活在app/helpers/application_helper.rb中的帮助方法?
我在我的文件test/unit/helpers/application_helper_test.rb中有这段代码
require 'test_helper'
class ApplicationHelperTest < ActionView::TestCase
test "category" do
assert categories_collection
end
end
Run Code Online (Sandbox Code Playgroud)
但我得到这个错误"NameError:undefined局部变量或方法`categories_collection'"
我想让我的rails控制器更灵活,并尝试为它创建一些Meta foo.
我有redirect_to方法的问题.我可以从字符串转换"edit_admin_post_path()"方法或更好地读出控制器名称并动态传递它吗?
这是我的Admin :: Posts控制器中的"post"代码.
respond_to do |format|
format.html { redirect_to(edit_admin_post_path(@object)) }
end
Run Code Online (Sandbox Code Playgroud)
谢谢!
我正在使用带有i18n的rails 2.3.5.我有办法在所有视图中找到所有尚未翻译的区域设置吗?也许是应用程序控制器中的after_filter,但是我可以使用哪个代码来完成这项工作?
谢谢