我对Rails有一个非常大的问题。假设我们需要创建一个关于博客的网站,我们允许用户注册,并且用户拥有自己的管理界面,这使他们可以添加,删除,编辑和选择文章和评论。 article
和comment
上的操作可能会在将来的其他位置使用。
所以我们有一个article
模型和一个comment
模型。
现在我们创建一个用户控制器:
class UserController < ApplicationController
def articleList
end
def articleSave
end
def articleUpdate
end
def articleDestroy
end
def articleEdit
end
def articleAdd
end
def commentList
end
def commentDestroy
end
def commentEdit
end
end
但它看起来并不好看,当用户管理控件有很多功能时,这个用户控制器会非常大。我应该创建一个article
控制器和comment
控制器来处理请求吗?刚分开进入文章控制器是这样的:
class ArticleController < ApplicationController
def list
end
def save
end
def update
end
def destroy
end
def edit
end
def add
end
end
评论控制器如下:
class CommentController < ApplicationController
def list
end
def destroy
end
def edit
end
def update
end
end
我不知道如何组织结构。
答案 0 :(得分:0)
我会为Users
Articles
和Comments
中的每一个设置单独的控制器,但在Comments
内Articles
和Articles
嵌套它们} Users
。这似乎符合你所描述的概念之间的关系
请参阅 http://www.sentia.com.au/blog/when-to-use-nested-controllers-in-your-rails-apps 和 http://guides.rubyonrails.org/routing.html#nested-resources 有关嵌套控制器的更多信息。