【问题标题】:Rails, create specific route for each user conversationRails,为每个用户对话创建特定路线
【发布时间】:2016-06-05 14:04:19
【问题描述】:

我正在尝试在我的简单应用中为我的用户创建一个简单的消息传递功能。

到目前为止,我已经创建了一个消息控制器/模型,用户可以在其中简单地来回发送消息。 User has_many :messages, Messages belongs_to User.

我的消息模型非常简单。它具有发送者 ID、接收者 ID 和消息正文。

在我的消息控制器/视图中,我目前有 Index 操作,其中显示了一条简单的行,显示用户有一条新消息。我想添加用户可以单击此行的功能,这会将他们带到另一个显示页面,该页面显示这两个人之间的整个对话。如何添加这个特定的路由和对应的动作?

例如:

{root}/users/johnsmith/messages = 显示给 john 的消息(这已经生效) {root}/users/johnsmith/messages/sallyfields = 显示 john 和 sally 之间的对话

如果有人可以提供帮助,那就太好了!谢谢!!

【问题讨论】:

    标签: ruby-on-rails-4 controller routes nested-resources nested-routes


    【解决方案1】:

    这两条路线最好用以下方式表示:

    get 'users/:user_id/messages'     => 'messages#index'
    get 'users/:user_id/messages/:id' => 'messages#show'
    

    不过,这也可以通过嵌套路由来表示,以获得更宁静的效果:

    resources :users do
      resources :messages
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-21
      • 1970-01-01
      相关资源
      最近更新 更多