Ruby on rails 3 RubyonRails3,在一个视图中呈现多个视图

Ruby on rails 3 RubyonRails3,在一个视图中呈现多个视图,ruby-on-rails-3,Ruby On Rails 3,我有一个问题,我不知道如何解决它。 我有一个登录网站的用户,我通过会话[:user_id]来识别他们,并且用户有一个在user_controller和status view中定义的状态页面。 所以,我想为管理员创建一个页面,使用已经编写好的控制器和视图在一个页面上查看所有用户的所有状态。 可能吗? 我可以重写一些代码,这样我就可以用params调用,比如?user_id=70,然后设置session[:user_id]=params[:user_id],但是如果我必须重写整个状态,那将是一件痛苦

我有一个问题,我不知道如何解决它。 我有一个登录网站的用户,我通过会话[:user_id]来识别他们,并且用户有一个在user_controller和status view中定义的状态页面。 所以,我想为管理员创建一个页面,使用已经编写好的控制器和视图在一个页面上查看所有用户的所有状态。 可能吗? 我可以重写一些代码,这样我就可以用params调用,比如?user_id=70,然后设置session[:user_id]=params[:user_id],但是如果我必须重写整个状态,那将是一件痛苦的事,而且我还必须在两个不同的地方维护相同的代码。 非常感谢。
Dorijan

如果您需要控制器中的更多功能,您可以向其添加更多操作。你也可以用足智多谋的方式做到这一点。 另一方面,保持控制器精简通常是最佳实践

见:

为了使视图可重用,应该使用partials。 您可以创建一个_user_status partial.html.erb,并为一个用户呈现一个部分,为管理员呈现所有部分


签出:

好的,我刚做了,但我还需要原始控制器的逻辑和变量。如何重用它们?要在多个控制器之间共享代码,可以将其放入ApplicationController中。你也可以考虑让你的控制器互相继承。也许你应该更清楚你拥有什么,你想做什么。从您的简短描述中有点难以分辨…我知道您很难理解我的问题:(…但是我可以在控制器User.all.each循环和渲染“status”中找到一个例子吗…上次尝试时,我遇到了错误…好的…我想我在render_to_字符串中找到了解决方案