社会化喜欢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了社会化喜欢相关的知识,希望对你有一定的参考价值。

我开始使用Socialization gem。因此,使用设计创建了用户模型:

class User < ActiveRecord::Base
    has_many :posts
    devise :database_authenticatable, 
    :registerable,
    :recoverable, 
    :rememberable, 
    :trackable, 
    :validatable

    acts_as_follower
    acts_as_followable
    acts_as_liker
end

然后我用脚手架创建了Post:

class Post < ActiveRecord::Base
   belongs_to :user
   acts_as_likeable
end

我希望允许用户喜欢帖子。但我不知道如何使用like按钮创建视图,我也不知道如何编写喜欢的方法。请举个小例子。我是铁杆的新手

我在veiw/posts/show.html.erb创建链接。

<%= link_to "Like", like_post_path(@post), 
:method => :post, :class => 'btn btn-primary btn-xs' %>

和app_contoller中的方法:

def like        
    @post = Post.find(params[:id])
    current_user.like!(@post)       
end

怎么写这个路线?

答案

您已经可以在控制台中测试它是如何工作的:rails c

user = User.first
post = Post.first
user.like!(post)
user.likes?(post)

因此,您可以在帖子控制器中创建一个动作:likes

def likes
  @user = current_user # before_action :authenticate_user, only: [:likes]
  @post = Post.find(params[:id])
  @user.like!(@post)
  redirect_to :back, notice: "Liked this post successfully!"
end

并为该操作创建路线:

get 'post/:id/likes', to: 'posts#likes', as: :likes

并在你的意见:

<%= link_to 'like', likes_path(@post) %>

以上是关于社会化喜欢的主要内容,如果未能解决你的问题,请参考以下文章

Android 友盟社会化组件-分享实现

Android集成友盟社会化分享功能

stoneniqiu 理想就是自己喜欢做,并对社会和他人都有意义的事情!

如何将网页分享到各大网站

微信正拉低中国社会的总体智商

是时候该为未来做事了