Ethsim2
(Ethan )
1
Windows 11ラップトップ上で discourse/discourse_dev Dockerイメージを試していて、開発ワークフローにおける小さな摩擦点に気づきました。
送信メールを設定せずに開発モードでDiscourseを実行すると、次のようになります。
- Ember CLI (localhost:4200) 経由でサインアップ/ログインページにアクセスできます。
- ユーザーアカウントを作成できます。
- しかし、メール認証が必要なため、ログインがブロックされます。
回避策は、例えばRailsコンソールで手動でアカウントを有効にすることのようです。
u = User.find_by(username: "admin")
u.approved = true
u.email_tokens.update_all(confirmed: true, expired: true)
u.save!
これは機能しますが、次のことが気になりました。
最初の管理アカウントをメールを設定せずにブートストラップするための推奨される開発ワークフローはありますか?
例えば:
- 開発者は通常、開発環境でもSMTPを設定する必要がありますか?
- これのためのヘルパータスク(
rake admin:createなど)はありますか?
- 開発コンテナがメール認証なしで最初のユーザーログインを許可するようにするのは理にかなっていますか?
主に、開発コンテナを試している新しい開発者向けに、よりスムーズなセットアッププロセスを文書化するために尋ねています。
Ethsim2
(Ethan )
3
ありがとうございます!それで解決しました。discourse_dev コンテナを試しているときに、bin/rails admin:create に遭遇していませんでした。
最初に混乱したのは、通常の UI サインアップフローはアカウント作成の時点までは機能しますが、SMTP が設定されていない場合、ログインがメール認証によってブロックされることでした。
開発環境を調査している人にとっては、ヘルパータスクについて知らない限り、ログインフローが壊れているように見えてしまいます。
新しいコントリビューターは通常 SMTP を設定していないため、Docker 開発コンテナの開発セットアップドキュメントで bin/rails admin:create について明示的に言及すると役立つかもしれません。
Moin
4
そのガイドで本当に必要かどうかわかりません。なぜなら、次のように書かれているからです。
管理者ユーザーの作成はすでにワークフローの一部であるように思われます
「いいね!」 1
開発環境でメールアクセスが必要な場合は、mailhog を実行することもできます。
Discourse ディレクトリで新しいコマンドラインを開き、mailhog を実行するだけです。その後、localhost:8025 にアクセスすると、通常送信されるはずのメールを確認でき、何も設定する必要はありません。
「いいね!」 2