インポートされたユーザーのアカウントをアクティブ化およびステージ解除する方法

こんにちは、

メーリングリストから投稿をインポートし、ユーザーが正常に作成されました。
しかし、現在それらは「ステージング」リストに含まれています。

個別にアクティブ化はできますが、一括でアクティブ化する方法はありますか?
また、ステージングから外す方法も教えてください。ユーザーのステージング解除ボタンが見当たりません。

その後、ユーザーは保留リストに表示されますが、ここでも一括で承認する方法はありますか?

よろしくお願いいたします。

「いいね!」 1

簡単な方法は、データエクスプローラーを使用することです

「いいね!」 1

データエクスプローラープラグインでは、データの修正を行うことはできません。

Administrative Bulk Operations にいくつかのヒントがあります。

以下のような処理で対応できるかもしれません。

User.all.update_all(active: true)
「いいね!」 4

それで行けるかもしれませんが、インポートの前・中・後にメールアドレスが検証されていない場合は、問題が発生します。メーリングリストであれば動作する可能性はありますが、一般的にこの方法はベストプラクティスではありません。

推奨されるアプローチは、ユーザーにサイトへアクセスし、メーリングリストで使用していたメールアドレスでアカウントを作成してもらうことです。メールアドレスがステージングされたユーザーのメールアドレスと一致する場合、そのユーザーはステージングされたアカウントの制御を引き継ぎます。一致しない場合は、新しいアカウントが作成されます。

「いいね!」 5

念のためですが、@Julien_J さんのご質問にはお答えしました。ただし、Justin さんの回答の方が優れています!

「いいね!」 2

こんにちは、

すべてのユーザーに招待を送信しようと試みました。
彼らは招待メールを正常に受け取りましたが、名前とパスワードでアカウントを作成しようとし、「招待を受け入れる」をクリックすると、何も起こりません。

そこで、すでにステージング済みのユーザーではない誰かに招待を送信してみたところ、正常に動作しました。

Chrome コンソールを確認すると、以下のようなエラーが表示されます。

_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:10113 PUT https://www.domain.tld/invites/show/f38d1e480cd9fb2d218c0d7aeddafded.json 500
send @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:10113
ajax @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:9696
i @ _application-fe142cfba5f192f0e63470885009a5a5bfbf952412fc41b59ea670a3ae4c7e27.js:9027
(anonymous) @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:72238
n @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:72760
r @ _application-fe142cfba5f192f0e63470885009a5a5bfbf952412fc41b59ea670a3ae4c7e27.js:9041
submit @ _application-fe142cfba5f192f0e63470885009a5a5bfbf952412fc41b59ea670a3ae4c7e27.js:34690
t._join @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:67257
t.join @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:66968
f @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:53760
(anonymous) @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:20968
r @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:50091
(anonymous) @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:20967
click @ _application-fe142cfba5f192f0e63470885009a5a5bfbf952412fc41b59ea670a3ae4c7e27.js:49429
trigger @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:46074
e @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:43433
t._run @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:67275
t._join @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:67251
t.join @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:66968
f @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:53760
(anonymous) @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:46175
r @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:50091
handleEvent @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:46171
handleEvent @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:45108
(anonymous) @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:45498
dispatch @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:5443
v.handle @ _ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:5247
_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:38545 Uncaught Error: [object Object]
    at _application-fe142cfba5f192f0e63470885009a5a5bfbf952412fc41b59ea670a3ae4c7e27.js:34720
    at E (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:72211)
    at w (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:72194)
    at g (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:72130)
    at t.invoke (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:66552)
    at e.t.flush (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:66442)
    at e.t.flush (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:66646)
    at e.t._end (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:67222)
    at e.t.end (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:66908)
    at e.t._run (_ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js:67277)

私は最新リリース +486 を使用しています。

ログを確認したところ、以下のようなメッセージが表示されています(5 回報告):

Message (5 copies reported)

Reviewable::InvalidAction (Can't peform `approve_user` on ReviewableUser)
app/models/reviewable.rb:346:in `perform'
app/models/invite_redeemer.rb:149:in `approve_account_if_needed'
app/models/invite_redeemer.rb:81:in `process_invitation'
app/models/invite_redeemer.rb:8:in `block in redeem'
app/models/invite_redeemer.rb:6:in `redeem'
app/models/invite.rb:85:in `redeem'
app/controllers/invites_controller.rb:52:in `perform_accept_invitation'
app/controllers/application_controller.rb:350:in `block in with_resolved_locale'
app/controllers/application_controller.rb:350:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:68:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:328:in `call'
config/initializers/100-quiet_logger.rb:19:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
lib/middleware/enforce_hostname.rb:22:in `call'
lib/middleware/request_tracker.rb:176:in `call'

Backtrace

app/models/reviewable.rb:346:in `perform'
app/models/invite_redeemer.rb:149:in `approve_account_if_needed'
app/models/invite_redeemer.rb:81:in `process_invitation'
app/models/invite_redeemer.rb:8:in `block in redeem'
activerecord (6.0.3.2) lib/active_record/connection_adapters/abstract/database_statements.rb:280:in `block in transaction'
activerecord (6.0.3.2) lib/active_record/connection_adapters/abstract/transaction.rb:280:in `block in within_new_transaction'
activesupport (6.0.3.2) lib/active_support/concurrency/load_interlock_aware_monitor.rb:26:in `block (2 levels) in synchronize'
activesupport (6.0.3.2) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
activesupport (6.0.3.2) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
activesupport (6.0.3.2) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'

Env

HTTP HOSTS: www.domain.tld

それ以外の場合、ステージングユーザーがパスワード再設定機能を使用して新しいパスワードを設定しようとすると、「ユーザーが見つかりません」と表示されます。

それを解決する方法について、何かアイデアはありますか?

@Julien_J サイトのアドレスを DM してください。お手伝いできるか確認します。

こんにちは
同じ問題に直面しています。何か解決策は見つかりましたか?ありがとうございます! :slight_smile:

まだDMが来ていません。つまり、彼が正しく送ったか、まだ処理待ちのどちらかです。

こんにちは、お返事が遅くなり申し訳ありません。
実は私のフォーラムはプライベートモードのみで、URL を活用することが難しい状況です。

以前のメッセージでご覧いただいた通り、招待状は正常に届きましたが、ユーザーはそれを使って何もできませんでした。これを解決するため、また私が10人未満の少数のユーザーリストにいるため、各ユーザーのメールアドレスを私のメールアドレス(Gmail の動的エイリアス機能を利用した myemail+user1@gmail.com のような形式)に変更し、「パスワードを忘れた」機能を使ってパスワードを設定してから、再度メールアドレスを正しいユーザーのメールアドレスに変更するという方法を取りました。

これは理想的な方法ではありませんが、機能しています。

「いいね!」 1

解決済み

「いいね!」 2