我目前正致力于一个名为" Gradebook"这将在Ruby on Rails中实现。在成绩簿的其中一个页面中,要求教师能够添加,删除或更新作业。
我是Ruby on Rails的初学者,所以我经历了几个教程并意识到我可以简单地定义"赋值"作为路由文件中的资源。我对此方法的唯一问题是每个CRUD操作,都有一个与之关联的特定URL(例如:" / assignment / new"或" / assignment /:id / edit&#34 )。但是在我的情况下,我希望能够在单个视图中执行多个CRUD操作。
我的想法是让一个控制器操作与我的视图相关联。该视图将包含多个提交按钮,这些按钮将命名为"添加","删除"和"编辑"分别。每个提交按钮的值将传递给单个控制器操作,代码将根据传递的值执行。例如:
def my_view_name
#So all assignments can be viewed in a table
@assignments = Assignment.all
if params[:commit] == 'Add'
#Save assignment to database
elsif params[:commit] == 'Remove'
#Remove assignment from database
elsif params[:commit] == 'Edit'
#Update assignment in database
end
end
但这是否是实现在单个视图中执行多个CRUD操作的最佳方式?