問題タブ [discourse]

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 投票する
1 に答える
3221 参照

ruby-on-rails - Deviseで既存のRailsサイトにDiscourse SSOを組み込む

ユーザー認証としてdeviseを使用している既存のRailsアプリがあります。談話フォーラムを追加しましたが、すべてがスムーズに進み、サブドメインに常駐しています. https://meta.discourse.org/t/official-single-sign-on-for-discourse/13045の投稿を読みましたが、ユーザーがログに記録した後、デバイス側で何をすべきかまだわかりません既存のレールサイトに。現在、これは私が理解しているプロセスです。

ステップ 1: ユーザーがサブドメインの Discourse フォーラムにアクセスします。ユーザーはログインする必要があるため、ログイン ボタンをクリックします。

ステップ 2: ユーザーは、既存の rails サイトのログイン ページに送信されます。

ステップ 3: ユーザーが rails サイトにログインします。

ステップ 4: ユーザーは、ログインした談話フォーラムのサブドメインにリダイレクトされます。

私の質問は、ユーザーがステップ 3 でログインしたときにサブドメインにリダイレクトされるようにするには、どうすればよいですか? 誰かがこれをうまく実装しましたか? そのウォークスルー ページで次のコード スニペットを見ました。

これは、既存の Rails アプリに追加する必要があるものですか? その情報がURLに含まれているかどうかを解析がチェックし、そうであれば、デバイスのログインプロセスが完了するとリダイレクトされ、そうでない場合は通常どおり機能すると思います。このコードをデバイスファイルのどこかに配置しますか?

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

windows - Windows で fast_stack をバンドルしようとするとエラーが発生する

エラーを修正する方法を理解しようとしています:

Helicon Zoo 環境にインストールする discourse.org アプリケーションの "bundle install" コマンドを書いたときに発生します。

0 投票する
0 に答える
355 参照

linux - めちゃくちゃな Docker 環境

私はDocker環境を少し台無しにしています。最初から始めましょう。GitLab の実行専用に使用された、新しくインストールされた Ubuntu 12.04 ハードウェア ボックスがあります。

かなりまともな CPU と大量の空き RAM があるので、Docker をインストールして、現在の Vanilla フォーラムの代わりに Discourse フォーラムをセットアップすることを考えました。私は開始してaptitude install docker.io、Ubuntu PPA から利用可能な最新の Docker パッケージを取得しました。

次に、Docker のインストール ドキュメントを調べたところ、別の方法でインストールされていることがわかりました。私は「よし、Docker を正しくインストールするには同じ方法を使用した方がよい」と考えました。だから私はちょうど行きましたがwget -qO- https://get.docker.io/ | sh、最初に古いインストールをパージするのを忘れていました。

ただし、Discourse のインストールを続行したところ、コンテナーの自動起動に関して問題が発生しました。ホスト システムが起動するたびに、コンテナーは実際に起動しますが、接続が制限されています。github.com例:どうやら解決できないため、イメージを再構築できません。

もう 1 つの問題は、コンテナーが SMTP (mandrillapp.com) 経由でメールを送信できないことです。だから私は少し掘り下げて、どうにかしてDockerを再起動するだけのアイデアを思いついservice docker restartた. DNS は機能し、メールは再び正常に送信されます。

したがって、基本的にホストが再起動service docker restartしたら、Docker を完全に機能させる必要があります。

すでにいくつかのデッド init スクリプトを探しましたが、1 つしかありません。

誰かがここで私を助けてくれますか?

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

linux - Docker/Discourse のインストール後、GitLab が機能しなくなりました

以前は、ハードウェア サーバー (Ubuntu 14.04) に常に最新の GitLab インスタンスがありました。

しかし、最近 Discourse (または Docker) をインストールすることにしましたが、GitLab が正しく起動しなくなりました。

サービスを実行すると、sidekiq プロセスが開始されますが、Unicorn ワーカーは開始されません。

いいえ、Docker は GitLab が使用するポートにバインドしようとしません。

Nginx は実行されていますが、以下のみが表示されます。

「502 - GitLab が応答していません。」

誰かが私を助けることができますか?

前もって感謝します。

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

linux - Amazon Linux AMI リリース 2014.03 に docker 1.2 をインストールする

Amazon Linux AMI リリース 2014.03 に談話フォーラムをインストールしようとしています。そのフォーラムをインストールするには、docker 1.2 以上を使用する必要がありますが、「yum install docker」と入力すると、Amazon からバージョン 1.1.2-1.0.amzn1 が取得されます。では、 https://github.com/docker/dockerから最新バージョンをダウンロードしてインストールするにはどうすればよいでしょうか?

0 投票する
0 に答える
2540 参照

ember.js - Ember にコンポーネントを再レンダリングするように指示する

次のようにコンポーネントを定義しました。

pathロジックは(きれいではありませんが)意図したとおりに機能しますが、またはの値がlabel変更されたときにEmberにコンポーネントを再レンダリングするように指示する方法がわかりません-render関数で使用しようとしましたが、これ.observes()を呼び出しようとしましたthis.rerender()動作しません。

ありがとう

編集:

はい、もちろん、手動でレンダリングするべきではありません。

私は今、単純なテンプレートを持っています:

このコンポーネントに支えられています:

これは機能するようになり、パスが変更されたときにログが正しく呼び出されるようになりました。オブジェクトを呼び出すとテンプレートが自動的に更新されると思ってい.setましたが、現時点では更新されていません。私は何が欠けていますか?

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

javascript - ハンドルバー テンプレートの外側の JavaScript から Ember.ArrayController にアクセスして、Discourse のバッジのリストを取得します。

Ember.js では、 を使用して、ember Web サイトの例のようにEmber.ArrayController、特定のデータ コレクションにアクセスできることを知っています。

次のようにハンドルバーでアクセスします。

しかし、私がやりたいのは、javascript で this にアクセスすることですか? より具体的には談話で、ユーザーのバッジを取得します。user-badges.js.es6コントローラー:

ユーザーのバッジのリストを取得するにはどうすればよいですか? Discourse.UsersBadges ArrayController の呼び出しが機能していないようです。

EmberJS がどのように機能すると想定されているか、または Discourse がどのように機能するように設計されているかを理解する上で問題が発生しているのかどうかはわかりません。

0 投票する
0 に答える
236 参照

ruby-on-rails - AJAX 経由の談話 API

AJAX を介して Discourse フォーラム ソフトウェアのインスタンスとやり取りしたいと考えています。

Discourse API gem をインストールしていませんが、AJAX リクエストを既存の Discourse Web インスタンスに送信したいと考えています。これを行うには API gem が必要ですか?

GET リクエストは問題なく実行できますが、何らかの理由で "/posts" への POST の実行に失敗します。クエリ文字列に API キーと api_username を追加しています。admin オプションと app.yml ファイルですべての CORS 設定を有効にしました。また、CORS を許可するように nginx ヘッダーを設定しました。

毎回OPTIONSで失敗しています。何が欠けているのか本当にわかりません。どんな助けでも大歓迎です。

0 投票する
0 に答える
485 参照

ruby-on-rails - Devise、Discourse & Single Sign On / SSO、ペイロードがドロップ、サインインできない

公式の実装手順 (こちら) と Stackoverflow に関するこの回答(こちら) に従って、談話用の SSO をインストールしました。しかし、それは機能していません。SSO ペイロードは、Get users/sign_in アクションと Post users/sign_in アクションの間にドロップされます。

Heroku のログは次のとおりです。

公式の指示 (上記) による談話 SSO コントローラーは次のとおりです。

Devise ビューをカスタマイズし、スコープ ユーザー (クラス Users::SessionsController < Devise::SessionsController) を使用して Devise セッション コントローラーをインストールしました。

Githubの Devise Sessions Controllerソース コードを見ると、Get / New および Post / Create メソッドは次のとおりです。

GET /resource/sign_in

POST /resource/sign_in

Create メソッドの最初の行は、New メソッドの最後の行を参照しますauth_options(これは ですprotected):

New メソッドの最後の行 (私は信じています) は、投稿されるパラメーターを作成します。それらはserialize_options(resource)、別のprotected方法です:

SSO ペイロードが として渡されていませんserialize_options

これは、deviseと oauth OmniAuth Single Sign On with Devise の同様の問題であると思われるもので、invalid_credentialsはトークンをスクレイピングすることで解決されます。

ガイダンスや考えをいただければ幸いです。ありがとう。