2011-03-02 54 views
0

我复制这从一本书我读,我跟所有的指示,但它给我无路由匹配“/用户/创建”错误:没有路由匹配“/用户/创建”

def create 
    if request.post? 
     @subscriber = Subscriber.new(:email => params[:email]) 
     if @subscriber.save 
     @success = "Thank you, You have been subscribed." 
     else 
     @error = @subscriber.errors.full_messages[0] 
     end 
    end 

请注意,本书是为Rails v2编写的,我正在使用v3。

怎么了?

+4

可能要张贴代码在'routes.rb'文件 – Jimmy 2011-03-02 19:01:39

+1

也代码的形式在'意见/用户/ new.html.erb'和它的局部。 – rubyprince 2011-03-02 19:07:56

+4

如果您使用'resources:subscribers','create'方法通过执行'POST/subscribers'而不是'GET/subscribers/create'来调用。 – 2011-03-02 19:08:25

回答

0

您发布的代码缺少END。

另外,不需要指定request.post?

Rails会自动将POST请求的创建方法