在Rails中,当您使用脚手架创建模型时,如下所示:
rails generate scaffold用户名:string email:string
它将生成:模型,控制器和视图
视图例如,在index.html.erb文件中有一个列出所有Users寄存器的表。对于每个用户,都有链接:显示,编辑,销毁
index.html.erb中的由以下行表示:
<td><%= link_to 'Show', student %></td>
<td><%= link_to 'Edit', edit_student_path(student) %></td>
<td><%= link_to 'Destroy', student, :confirm => 'Are you sure?', :method => :delete %></td>
并且还有一个新用户链接,表示为:
<%= link_to 'New Student', new_student_path %>
但是,如果我在没有脚手架的情况下手动创建模型,视图和控制器,则不会生成这些“路径”。 “路径”是指:new_student_path,edit_student_path(学生),学生
如何手动生成这些?
答案 0 :(得分:1)
将资源添加到config/routes.rb
时,路径将自动生成。
假设您已手动添加名为StudentsController
的控制器。
要获取new_student_path,edit_student_path等,您需要将此行添加到config/routes.rb
resources :students
这会为七个休息动作添加路径。 您可以在此网址上阅读有关rails路由的更多信息:http://guides.rubyonrails.org/routing.html
答案 1 :(得分:0)
修改您的config/routes.rb
。
您可以添加例如这样:
resources :students
您可以在http://guides.rubyonrails.org/routing.html
看到更多内容您可以在命令行中键入rake路线,以查看在执行此操作之前和之后可用的路线 基本上你会得到以下路线:
HTTP VerbPath action used for
GET /photos index display a list of all photos
GET /photos/new new return an HTML form for creating a new photo
POST /photos create create a new photo
GET /photos/:id show display a specific photo
GET /photos/:id/edit edit return an HTML form for editing a photo
PUT /photos/:id update update a specific photo
DELETE /photos/:id destroy delete a specific photo