今天在遇到这样一个问题.在partial里提示flash为nil,我想不可能阿..

为了测试,我新建了一个全新的rails项目, 只创建了一个空的controller:flash 且只有一个方法 index
rails2.02版本

为了方便管理flash,我把flash放在了partial里.
我建了这几个局部文件:

views/shared/_flash.erb
views/shared/_flash_1.erb
views/layouts/_flash.erb
views/layouts/_flash_1.erb

他们的内容都是 :
Class:<%= flash.class %>


在全局模板中全部渲染:
<%= render :partial => "shared/flash" %>


然后测试
输出结果是:


引用
In views/shared/_flash.erb :
ClassNilClass

In views/shared/_flash_1.erb:
Class:ActionController::Flash::FlashHash

In views/layouts/_flash.erb:
Class:NilClass

In views/layouts/_flash_1.erb:
Class:ActionController::Flash::FlashHash


不知道这个是不是一个bug,局部文件不能用_flash来命名..
我猜是rails里面的一些命名约定造成的吧..

有人遇到这个问题么?
评论
grayblur 2008-01-16
干嘛叫MVC呢。。都扯到一块去了。还怎么分离呢。
grayblur 2008-01-16
Readonly 写道
flash是rails的特殊对象,看文档

我当然知道flash是特殊的方法,但是不能说你一个方法叫flash,连模板都不能用flash来命名吧。。
如果说方法和它冲突当然是我自己的问题。
模板的名字和rails的约定并没有冲突,而出现不能访问,这才是问题。
Readonly 2008-01-16
flash是rails的特殊对象,看文档
发表评论

提醒: 该博客已发表在公共论坛,博客所有留言会成为论坛回贴,留言请注意遵守论坛发贴规则

您还没有登录,请登录后发表评论

grayblur
搜索本博客
博客分类
最近加入圈子
最新评论