Ruby on rails 将主页路由为#新操作
我希望Ruby on rails 将主页路由为#新操作,ruby-on-rails,Ruby On Rails,我希望静态页面/主页配置为列表#新建,以便在请求主页时,浏览器将使用用户输入表单呈现home.html.erb,提交表单后,在数据库中创建新的列表条目。我尝试将此添加到routes.rb resources :lists root 'static_pages#home' match '/static_pages/home', to: 'lists#new', via: 'get' 但这样应用程序完全忽略主视图,只加载\u form.html.erb部分 接下来的第二个问题是,这个将显示在主页上
静态页面/主页
配置为列表#新建
,以便在请求主页时,浏览器将使用用户输入表单呈现home.html.erb
,提交表单后,在数据库中创建新的列表
条目。我尝试将此添加到routes.rb
resources :lists
root 'static_pages#home'
match '/static_pages/home', to: 'lists#new', via: 'get'
但这样应用程序完全忽略主视图,只加载\u form.html.erb
部分
接下来的第二个问题是,这个将显示在主页上的表单是否应该进入
\u form.html.erb
部分?删除文件/public/index.html
,并更新root:to=>/config/routes.rb文件中的'lists#new'
,我无法理解您的第二个问题这没有任何意义。如果您想“/”转到列表#新建
,只需将根目录转到:“列表#新建”
。static\u pages/home
与任何事情都有什么关系?@Sontya我没有index.html
文件,但根据您建议的更新,/static\u pages/home/
现在确实呈现了正确的视图。对于第二个问题,此页面上的表单是否应进入\u form.html.erb
或home.html.erb
?谢谢大家!@meagar给我的印象是,在开始为应用程序中的视图制作非静态布局之前,您要在/static_pages/…下制作所有视图?仅使用
resources:lists root:to=>“lists#new”`在路由中“/”现在呈现\u form.html.erb
。在此之前,它是“/”和静态页面/主页
@sivanes-yaa之间的另一种方式。这很好,然后您可以将新方法定义为def new response\u to | do | format.html end end
并以new.html.erb表单呈现您的_form.html.erb作为'/表单“%>