問題タブ [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.

0 投票する
2 に答える
344 参照

ruby-on-rails - Rails 3 - カスタム テナント ID 列を持つacts_as_tenant

acts_as_tenantテナント ID 列に名前が付けられていないマルチテナンシーにRails gem をうまく使用した人はいxxx_idますか?

私のモデルは次のようなものです

select * from [table] where tenant_id = xxx次に、オーバーライドされたforeign_key仕様を無視してクエリを取得します。

これを修正する方法はありますか?それとも明らかに間違ったことをしていますか?

ありがとう!!

0 投票する
1 に答える
205 参照

ruby-on-rails-3 - cancanability.rbからacts_as_tenant current_tenantを参照する方法

current_tenant に対して設定された全体的なアクセス許可がいくつかあります。これらはコントローラー内から参照できます。

正常に動作します。

これを CanCan を使用してまとめたいと思います。次のように自分のアビリティ.rb に入れると、未定義のローカル変数またはメソッド「current_tenant」が得られます #

0 投票する
2 に答える
1511 参照

ruby-on-rails-3.2 - act_as_tenant を rspec でテストする

ascts_as_tenant を使用したマルチテナンシー アプリがあります。スコープをテストする仕様を書こうとしています。そこで、User.active の出力をテストしたいと思います。

一般に、これは次のようなコードでうまく機能します

ただし、acts_as_tenant 機能を使用して current_tenant を使用し、1 つのテナントのアクティブなユーザーのみを一覧表示することを検証する方法がわかりません。これは以前に行われたと確信していますが、まだドキュメントを見つけていません。

したがって、acts_as_tenant ユーザー モデルを rspec でテストするにはどうすればよいですか?

0 投票する
1 に答える
295 参照

ruby-on-rails - サブドメインでスコープされた as_as_tenant がデバイスでパスワードをリセットできるようにする方法

私はdeviseとacts_as_tenant gemを使用していますが、deviseコントローラーはApplicationControllerから継承していないようです(???)ので、set_current_tenant_by_subdomainにアクセスできません

パスワード リセット リンクをクリックすると、サブドメインによるテナント スコープが表示されません。

では、これをどのように処理しますか?set_current_tenant_by_subdomain が確実に呼び出されるように DeviseControllers を開く簡単な方法はありますか?

本当にありがとう

0 投票する
1 に答える
183 参照

ruby-on-rails-3 - act_as_tenant を追加した後、ユーザーがサインインできない

認証にClearanceを使用し、テナントを設定するためにacts_as_tenantを使用しています

ユーザー.rb

application_controller.rb

company.rb

ログ

ログインするたびに、デフォルトで company_id=1 が取得され、認証が失敗します。私はすべてを試しましたが、ユーザーモデルでacts_as_tenant(:company)をコメントアウトすると正常に動作します。助けてください!

0 投票する
1 に答える
571 参照

ruby-on-rails - gem/engine モデルを拡張してメイン アプリからの act_as_tenant を含める

この件に関する投稿はいくつかありますが、まだ点灯していません。

私は、Rails gem/engine Plutusを拡張して、 acts_as_tenantを使用しようとしています。

Plutus は、アプリケーション用の複式簿記システムを提供します。制限の 1 つは、設計上、1 人の顧客または 1 セットの本しか許可されないことです。私がやろうとしているのは、acts_as_tenant を使用してマルチテナンシーを追加し、Plutus エンジンへの変更をできるだけ少なくすることです。目標は、別のフォークで Plutus を大幅に変更することではなく、複数のアカウントが必要な場合にのみ使用されるいくつかのオプションのメソッドまたは属性を Plutus に追加することです。

私はそれを半分動作させていますが、物を置く場所を見つけるのに助けが必要で、何が機能していないかを片付けるのに役立ちます. 凝縮された Plutus モデルは次のとおりです。

次に、Account の sti クラス: Asset、Equity、Expense、Liability、Revenue、および Amount の sti クラス: DebitAmount、CreditAmount。これは私のレールの知識を少し超えていますが、これは私が今まで見た中で最もコンパクトな複式簿記スキームの可能性があります (私は会計士ではありませんが、過去にアプリに会計機能を追加する必要がありました)。

セミワーキングとは、私が Plutus で変更した唯一のことは、3 つのモデルに を追加し、tenant_idacts_as_tenant を取得して 3 つのモデルのうちの 2 つを拡張することです。メインアプリケーションのコンソールから、次のことがわかりました。

Account と Transaction では機能しますが、 Amount でエラーが発生しuninitialized constant Transaction、理由がわかりません。何か案は?

acts_as_tenant(:tenant)エンジンに関するレールガイドを読み、デコレーターまたは懸念事項で拡張しましたが、これらのアプローチを使用してモデルに送信する方法がわかりませんでした。この 3 行のコードをメイン アプリケーションのどこに配置すればよいでしょうか (Amount を機能させる方法を理解していれば!)?

より良いアプローチはありますか?

拡張または変更しなければならないクラス メソッドがまだいくつかありますが、この最初のハードルを乗り越えるまでそれを試しても意味がありません。

0 投票する
1 に答える
594 参照

ruby-on-rails - コントローラーでcurrent_tenantを使用すると、Railsがテナントとして機能するエラーが発生する

を使用してActs_as_tenantいます。ドキュメントは言い"adds a handy helper to your controllers current_tenant, containing the current tenant object"ます。

しかし、モデル内の現在のテナントにアクセスしたいと思います。Tenantモデルには列が含まれています- request_closed

これが機能したことを願っています:

私も試しました:

しかし、私は得る:

モデルで current_tenant にアクセスする方法はありますか?

助けてくれてありがとう!

更新1

これはうまくいくと思いました-開発では機能しますが、Herokuステージングサーバーでは機能しません。

アプリケーション コントローラ:

リクエスト コントローラー:

????

0 投票する
1 に答える
514 参照

ruby-on-rails - マルチテナント Rails アプリのユーザーとアカウントの関係の問題

私のアプリケーションの主な宝石: rails 4.1.1pgacts_as_tenantdeviseおよびactiveadmin.

アプリケーションの説明: サブドメインを持つ saas マルチテナント アプリ (postgresql スキーマを使用しない)。
私は2つのモデルを持っています:AccountそしてUser:

  • belongs_to :ownerUser の class_name をアカウントに入れる
  • ユーザーbelongs_to :accountとまたacts_as_tenant(:account)

注:acts_as_tenant を使用している場合、begs_to を宣言する必要があるかどうかわかりません。

パブリック ドメイン (www.myapp.dev) では、ユーザーは新しいアカウントを作成し、独自のサブドメインを選択できます。このユーザーは、この特定のサブドメイン/アカウントの「所有者」のステータスを持っています。アカウントの作成後、ユーザーはサインインのためにカスタム サブドメインにリダイレクトされます。サインインすると、所有者は他のユーザーを作成/招待して自分のアカウントに参加させることができます。

アカウントの作成時に、owner_id がアカウント レコードに正しく保存されます。ActiveAdmin では、アカウントを所有者別にフィルターできます。

問題は、account_id がユーザー レコードに保存されていないことです。また、ActiveAdmin で、ユーザー レコードを編集してアカウントを追加しようとすると、データが保存されません…</p>

私はRailsを学んでいるので、簡単にしてください:)

マイ アカウント モデル :

私のユーザーモデル:

アプリケーションコントローラー:

アカウント コントローラー:

ユーザーコントローラー:

そして私のデータベーススキーマ: