我需要发送请求并接受instagram这样的关注并接受Rails

时间:2019-08-29 18:22:08

标签: ruby-on-rails ruby

我已经创建了Michael Hartl rails教程中指定的Web应用程序。追随者直接跟随任何人。我需要根据请求进行升级并接受。首选的解决方案链接或步骤。

1 个答案:

答案 0 :(得分:2)

您可以生成一个名为Request的模型,在该模型中您将处理用户之间的连接,还可以控制哪个用户正在发送请求以及谁在接收请求。您可以具有accepted_atdeclined_at之类的字段。

例如,User A可以向User B发送关注请求。根据{{​​1}}是否接受请求,您可以向User B发送通知,并在User AUser A之间建立连接。

在模型中,您可以输入以下内容:

User B

在您的表单中,您可以输入以下内容:

class Request < ApplicationRecord
  belongs_to :sender, class_name: "User", foreign_key: "sender_id" (or some other name like follower)
  belongs_to :sending, class_name: "User", foreign_key: "sending_id" (or some other name like following)
end

在控制器中,您可以拥有

<%= form_with model: @request, method: :put, local: true do |form| %>
  <%= form.hidden_field :accepted_at, value: Time.now, type: "hidden" %>
  <%= form.submit "Accept" %>
<% end %>

<%= form_with model: @request, method: :put, local: true do |form| %>
  <%= form.hidden_field :declined_at, value: Time.now, type: "hidden" %>
  <%= form.submit "Decline" %>
<% end %>

我认为这将为您提供如何做的原始想法。如果您有任何疑问,我们将很乐意为您提供帮助。

快乐编码。