问题标签 [acts-as-tenant]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 设计和 ActsAsTenant 不能很好地配合
我正在使用 ActsAsTenant,并且在任何设计路线(即任何设计控制器)上都不断收到以下错误。似乎 Devise 试图在设置租户之前获取 current_user 或与获取用户有关的东西,因此 ActsAsTenant 然后引发错误。我尝试使用 prepend_before_action 来设置租户,但这没有用。
如何确保在 Devise 开始查找 current_user 之前设置了租户?
ActsAsTenant::Errors::NoTenantSet at /edit ActsAsTenant::Errors::NoTenantSet
ruby-on-rails - Rails 充当租户,在 Heroku 上的模型中为零
我gem 'acts_as_tenant'
在 Rails 3 应用程序中使用。
我根据域在应用程序控制器中设置租户:
我在工作订单模型中有需要使用 current_tenant 的代码:
在我的本地 Mac 上,这工作正常。但是,当我上传到 Heroku 时,我收到了这个错误:
所以,ActsAsTenant.current_tenant
是 nil(在 Heroku 上)。
这是为什么?
谢谢您的帮助!
更新1
ActsAsTenant.current_tenant
在stmt 中使用相同的模型where
没有问题:
更新2
我尝试将代码移动到应用程序控制器,但这甚至无法在本地工作:
但我得到:
更新3
我尝试了另一种方法,即根据 URL 的子域查找租户。查找代码在视图中可以正常工作,但在模型中却不行。
ruby-on-rails-4 - ActsAsTenant current_tenant + Capybara + RSpec 测试
我正在尝试使用具有有效 current_user 的 Capybara/RSpec 创建一个集成测试(使用 Warden.test_mode!技巧),并且我还通过在测试中执行此操作创建了一个有效的 current_tenant:
运行测试时,会出现“nil:NilClass 的未定义方法”错误,这是未设置 current_tenant 的特征。我已经验证 Account.first 确实有我所期望的。
可能是什么问题,我该如何解决?
devise - 使用单点登录的 Rolify 和acts_as_tenant(旁边有一些设计和权威)——可以吗?
我将尝试在我的 Rails 应用程序中完成这项工作,但我想我会看看是否有人知道会阻止我走上正轨的陷阱。
基本前提是我有以下模型:
- 公司——acts_as_tenant 中的租户
- 用户 - 与 Devise 相关联的所有租户共享的唯一电子邮件地址以进行身份验证,即单点登录
- 角色 - 通过 Rolify 然后使用 Pundit 进行授权
- Model1、Model2 等,每条记录属于一个公司
从我目前所阅读的内容来看,只要我设置正确,我就会隔离我的租户数据,然后用户可以在租户之间切换,他们的权限也会相应地改变。
所以我的具体问题:
acts_as_tenant 只能与 Rolify 一起使用吗?
例如,如果 Tenant1 中的管理员用户向新用户添加角色,该角色是否会自动仅应用于该租户拥有的资源?
ruby-on-rails - 无法使用“租户”创建用户
我正在使用宝石米利亚和设计。
只是为了测试,我想创建用户:
错误是:
ruby-on-rails - 无法使用acts_as_tenant 创建简单模型实例
我正在使用宝石https://github.com/dsaronin/milia。我的模型之一称为组:
但由于某种原因,我无法创建它。这是rails控制台:
但是当涉及到 Group 时,它总是无效的:
怎么了?
ruby-on-rails - 充当租户 gem 范围所有用户数据,忽略基于子域的范围数据
我正在使用acts_as_tenant gem 来做一个多租户应用程序。我按照说明进行操作。我正在使用子域。
在我的application_controller.rb
我有:
set_current_tenant_by_subdomain(:account, :subdomain)
我Account
作为租户使用。在我的User
模型中,我调用了:
问题
当我使用子域(例如:)登录帐户时john.realestate.dev
,一切正常(current_tenant
即设置了 john)。
我有另一个模型叫做Property
; 当当前登录的租户(即 john)创建新属性时,所有其他用户都可以看到该记录。我只希望 john 能够看到他创造的记录。
我哪里错了?
我的模特关系是:-
Account
-has_many :users
User
-belongs_to :account
Property
ruby-on-rails - act_as_tenant gem 使用 RSpec/FactoryGirl 创建错误
我正在尝试使用acts_as_tenant
gem 来确定多个组织的 SQL 查询范围。然而,RSpec/FactoryGirl 正在使用一些肮脏的技巧。
一点背景知识:在我的应用程序中,User
两者Grant
都属于Organization
. 只有管理员用户可以创建/删除Grant
s。
就像 gem 的文档建议的那样,我已经插入acts_as_tenant :organization
了我的Grant
和User
模型。我也在我set_current_tenant_through_filter
的. 查询和仅限于当前用户:before_action :set_organization
application_controller.rb
User
Grant
Organization
一切似乎都很好。现在编写控制器测试:
管理部分引发了一个奇怪的错误:
因此,即使我已将组织的外键专门传递给 FactoryGirl,它仍然无法识别Organization
.
当我注释掉acts_as_tenant
特定代码时,错误就会消失。我怎样才能让测试永远变绿?
ruby-on-rails - 如果使用租户,Rails 设计如何设置确认 URL
我有一个使用 Devise 的 Rails 应用程序,它也使用acts_as_tenant。
在我的应用程序控制器中,我为 url 创建了一个变量(包括租户前缀)。它被称为 $request_url
问题是确认电子邮件中的 URL 不会更改租户前缀。例如一些.website.com 与其他.website.com
如何更改此行以使用正确的 URL?:
我需要创建一条新路线吗?
谢谢您的帮助!
ruby-on-rails - 太阳黑子搜索 - 忽略默认范围
我正在使用acts_as_tenant
在我的模型中注入默认范围的 gem。
我也使用 Sunspot 进行搜索,如下所示:
Article
模型的范围是这样的,即使我没有在搜索中传递当前租户 ID,我也只会得到正确的结果(只是总数会被关闭)。
现在,问题:
如果在某些情况下我想忽略默认范围,acts_as_tenant
我该如何在 Solr 中做到这一点?这将不起作用:
它将生成不正确的 SQL:
organization_id
当前租户的 id在哪里
TL;DR:使用 Sunspot 搜索时如何忽略默认范围?