我会问一个有点模糊的问题,但在这里:
我正在维护传统的Rails 2.3.8应用程序。我注意到一个奇怪的行为,首先应用程序正在服务controller_x/action_x
而没有任何错误,因为有app/views/controller_x/action_x.rhtml
但action_x
中没有controller_x.rb
的定义。然后,在一段时间后它停止提供服务,我必须在action_x
中创建controller_x.rb
空函数,以使其再次提供请求。
什么可能导致这种行为发生?如何在跳过控制器的同时提供动作视图?
更新 现在发生的错误是:
ArgumentError in ControllerXController#action_x
no id given
谢谢,
答案 0 :(得分:2)
只要您定义了相应的视图文件(action_x.rhtml
),就不必定义操作(尽管如此定义它是一种好习惯,这样其他人就可以更轻松地了解您的操作内容。项目)以便提供视图。
你得到什么错误?您的routes.rb
文件看起来如何?
UPDATE :该操作需要一个参数,所以这样的事情可行:http://localhost:3000/controller_x/action_x/1
。您确定路线文件中只有map.connect ':controller/:action/:id'
吗?