gpt4 book ai didi

ruby-on-rails - 尝试在 Rails Controller 中创建一个方法

转载 作者:太空宇宙 更新时间:2023-11-03 17:01:36 24 4
gpt4 key购买 nike

我仍在尝试掌握 Rails 的窍门,我正在尝试创建一个带有表单的简单应用程序,我可以在其中输入数据,然后提交数据,并将其存储在数据库中。通过启动一个新项目然后运行,我变得非常简单:

$ rails generate scaffold RSVP firstName:string lastName:string

现在我想在通过表单添加新记录后重定向到感谢页面。

我已将以下方法手动添加到我的 rsvps_controller.rb 文件中:

# GET /rsvps/thank_you
def thank_you
respond_to do |format|
format.html # thank_you.html.erb
format.json { render json: @rsvps }
end
end

这一行在我的路由文件中:

resources :rsvps 

我的问题是,当我运行 rake routes 时,我没有看到 thank_you 方法的路线。我的 :rsvps 资源不应该选择我的 thank_you 路由吗?这些路由如何知道哪个 Controller 方法是哪个 http 调用(get、post、put 等)?

最佳答案

为了在你的 Controller 中获得一个会触发那个 Action 的路由,你应该在你的 routes.rb 文件中有这样的东西:

resources :rsvps do
member { get :thank_you }
end

resources :rsvps do
collection { get :thank_you }
end

这取决于您是否要访问刚刚创建的资源。

可以看看@http://guides.rubyonrails.org/routing.html它应该可以帮助您更好地理解路由机制。

关于ruby-on-rails - 尝试在 Rails Controller 中创建一个方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11462664/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com