我浏览了
socialization gem的文档,并没有彻底解释如何在我的路由和控制器中设置gem,使得跟随和提及功能正常工作.
我想知道有没有人可以告诉我如何在我的路线和控制器中设置这个宝石,使其正常工作.
一个深思熟虑的答案将不胜感激.
解决方法
我是社会化的作者.这是我们的应用程序采取的一些代码.我们有一个SocializationsController处理像&跟随每个模型.这很简单
# routes.rb ## snip ## resources :users do post 'follow',to: 'socializations#follow' post 'unfollow',to: 'socializations#unfollow' end resources :categories,only: [:index] do post 'follow',to: 'socializations#unfollow' end ## snip ## # socializations_controller.rb class SocializationsController < ApplicationController before_filter :load_socializable def follow current_user.follow!(@socializable) render json: { follow: true } end def unfollow current_user.unfollow!(@socializable) render json: { follow: false } end private def load_socializable @socializable = case when id = params[:comment_id] # Must be before :item_id,since it's nested under it. @community.comments.find(id) when id = params[:item_id] @community.items.find(id) when id = params[:user_id] User.find(id) when id = params[:category_id] @community.categories.find_by_id(id) else raise ArgumentError,"Unsupported socializable model,params: " + params.keys.inspect end raise ActiveRecord::RecordNotFound unless @socializable end end
对于提及,您只需要解析一个提到的注释,例如,并用代码手动创建提及.应该是相当简单的.