我不太确定如何构建这个问题,但我正在使用rails从头开始构建社交网络;一个功能是Twitter风格的消息。我正在尝试创建一个选项,当用户提交他们的消息时,有一个复选框,显示“私人”。如果选中该复选框,则只有用户朋友才能看到提交。如果选中该复选框,则任何用户都可以看到问题。
我该如何实施?我甚至不知道在哪里寻找一个甚至模糊相似的想法或策略。任何建议都会非常感激。
答案 0 :(得分:1)
您可以使用radio-button或check-box。
如果未选中复选框,则不会将复选框值与HTML表单提交一起发送,因此您应该了解有关使用复选框的一些注意事项:http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html#M002298
答案 1 :(得分:0)
这可以通过给消息一个布尔“私有”属性来轻松完成。如果设置为true(提交选中框的表单),则只有朋友可以查看。如果它是假的(或零),任何人都可以看到它。然后,这只是一个方法,如...
def is_allowed_to_view?(comment)
current_user.is_friends_with(comment.creator) || !comment.private
end
在您的User.rb
模型中,或其他一些检查评论隐私的方法。