加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 如何根据帐户调整acts_as_taggable_on_stereoi

发布时间:2020-12-17 02:26:18 所属栏目:百科 来源:网络整理
导读:如果我的网站在逻辑上分成了帐户(例如acme.mywebsite.com,xyz.mywebsite.com),我如何实现act-as-taggable-on-steroids并将标签作为当前帐户的范围? 为了提供更多细节,如果我正在访问极致,我不想看到来自xyz子域的标签. 我已经研究过act-as-taggable-on,但是
如果我的网站在逻辑上分成了帐户(例如acme.mywebsite.com,xyz.mywebsite.com),我如何实现act-as-taggable-on-steroids并将标签作为当前帐户的范围?

为了提供更多细节,如果我正在访问极致,我不想看到来自xyz子域的标签.

我已经研究过act-as-taggable-on,但是如果你想为同一个模型提供不同类别的标签,那么只提供上下文.

解决方法

假设我理解你的问题,你有多个帐户,每个帐户都有自己的标签集,可以应用于调用acts_as_taggable的应用程序中的任何模型.以下应该做你想要的.

您可以将以下内容添加到应用程序控制器,以使子域可供所有操作访问.

class ApplicationController < ActionController::Base

  before_filter :getSubdomain

  def getSubdomain
      @current_subdomain.(self.request.subdomains[0])
  end
end

假设您将数据库中的标记链接到某个子域,然后可以创建命名范围.此示例假定子域是用户名,并且您的标记模型属于用户,然后您可以在标记模型上使用命名范围来仅选择与子域相关的范围.

class Tag < ActiveRecord::Base
  ...
  named_scope :find_by_subdomain,labmda do |subdomain|
    { :joins => "users ON users.id = tags.user_id",:conditions => ["users.name = ?",subdomain] }
  end
end

然后检索由与子域关联的用户创建的帖子上的标签:Posts.tags.find_by_subdomain(@subdomain)

注意:你必须增加由act-as-taggable-on-steroids提供的标签模型来添加以下内容.? – 将每个标记链接到帐户的列.? – 帐户范围的唯一性验证.允许多个帐户具有相同的标记.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读