我已经创建了Michael Hartl rails教程中指定的Web应用程序。追随者直接跟随任何人。我需要根据请求进行升级并接受。首选的解决方案链接或步骤。
答案 0 :(得分:2)
您可以生成一个名为Request
的模型,在该模型中您将处理用户之间的连接,还可以控制哪个用户正在发送请求以及谁在接收请求。您可以具有accepted_at
和declined_at
之类的字段。
例如,User A
可以向User B
发送关注请求。根据{{1}}是否接受请求,您可以向User B
发送通知,并在User A
和User 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 %>
我认为这将为您提供如何做的原始想法。如果您有任何疑问,我们将很乐意为您提供帮助。
快乐编码。