問題タブ [django-rest-auth]

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

django - RuntimeError:モデルクラスdjango.contrib.sites.models.Siteは明示的なapp_labelを宣言しておらず、INSTALLED_APPSのアプリケーションにはありません

Django Rest Framework と AngularJs を使用してアプリケーションを構築しています。認証目的で Django-rest-auth を使用していますが、セットアップできませんでした。とにかく、私は自分のプロジェクトでこのアプリをセットアップしようとしています。実行するには django-rest-auth-registration をインストールする必要があることに気付いたので、このドキュメントに従って次のことを行いました。

コマンドを実行しました

pip install django-rest-auth

pip install django-allauth

私のsettings.pyは次のようになります:

認証バックエンド、context_processors、および適切な URL も追加しました。

ただし、移行しようとすると、端末で次のエラーがスローされます。

RuntimeError: モデル クラス django.contrib.sites.models.Site は明示的な app_label を宣言しておらず、INSTALLED_APPS のアプリケーションにもありません。

このエラーが発生するのはなぜですか? また、プロジェクトを移行するためにエラーを解決するにはどうすればよいですか? ありがとう!

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

django - django-allauth は、引数 '()' とキーワード引数 '{}' が見つからない 'account_confirm_email' に対してエラー Reverse を返します

私はdjango-allauthをdjango rest-authとともに使用しています。

ここにスタックトレースがあります:

allauth の私の URL

私のアプリ「api」内:

api/urls.py

これは、私のプロジェクト内の「api」という名前のアプリ内にあります。

私が見るシェルを使用して:

api:account_confirm_email を使用すると、正しい URL が返されます。

また、 rest-auth FAQに従って、ビューで account-confirm-email をオーバーライドする必要があるため、URL をオーバーライドします。

私のURLで:

ここに別の同様の質問があります: django-allauth がエラー「Reverse ... 引数 '()' とキーワード引数 '{}' が見つかりません」を返す

しかし、その問題はネームスペースが原因であり、私のurls.pyではallauth URLのネームスペースを作成していません。

私が間違っていることを提案してください。

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

angularjs - angular.js、行 3627 の警告応答しないスクリプト

Angular JS フロントエンドを使用して Django Rest Auth をセットアップしようとしているので、このアプリケーションをベースとして使用しています。

ページの指示に従ってセットアップを行いました。ただし、ローカルホストに移動すると、ページが機能しなくなり、ブラウザーが機能しなくなり、次のようなレポートが表示されます。

このページのスクリプトがビジーであるか、応答を停止している可能性があります。スクリプトを今すぐ停止するか、デバッガーでスクリプトを開くか、スクリプトを続行することができます。

スクリプト: http://127.0.0.1:8000/static/js/angular-1.5.0/angular.min.js:192

すべてのAngularファイルが静的フォルダーにあることに注意してください。ターミナルは、すべてのAngularファイルとテンプレートファイルを適切に見つけることができると言います(HTMLステータスコード200)

サンプル アプリに必要なすべての依存関係も次のようにインストールしました。

angularファイルにGoogle CDNを使用してみましたが、同じ問題が存在します。1.5.0 の代わりに angular 1.2.16 を使用してみましたが、それでも同じ問題が発生します。サンプル アプリが私のプロジェクトで動作しない理由を教えてください。どんな助けでも大歓迎です!

編集

angular.min.js の代わりに angular.js を使用すると、このループの開始点である 3627 行に問題があるようです。

エラーコンソールから、これが問題の原因です:

エラー: [$rootScope:inprog] $digest は既に進行中 http://errors.angularjs.org/1.5.0/ $rootScope/inprog?p0=%24digest

angular.js:68:12 で

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

json - シリアライザーで ValidationError をフォーマットする

DjangoRestFramework はさまざまな方法でエラーを処理しているようです。シリアライザー クラスの ValidationError は、常に同じ JSON を返すわけではありません。

現在の応答には、JSON リスト/オブジェクト文字列が含まれています。

達成したいこと:

この応答がデフォルト関数の結果であることを認識しています。ただし、検証関数をオーバーライドしました。

カスタム例外ハンドラを追加しようとしました:

ビュー.py:if serializer.is_valid(raise_exception=True):

ただし、それは現在発生しているエラーのみを追加します。

返されるテキストの形式を変更するにはどうすればよいですか? 検証関数内のこの特定のシリアライザーに対して、このような JSON のみを返します。

non_field_errors テンプレートのフォーマットも調べましたが、他のすべてのシリアライザーで動作します。

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

python - Django、Angular、および DRF: Django バックエンドと API に対する認証

Django バックエンド、Angular フロントエンド、および Angular 用の Django REST Framework を使用して REST API を使用してアプリを構築しています。私がまだバニラのフロントエンドでバックエンドの作業を行っていたとき、提供された Django 認証を使用してユーザー認証を処理しましたが、REST ベースのアプリを作成しているので、認証へのアプローチ方法がわかりません。

すべてのユーザー データは API 経由で取得または送信されるため、API 認証で十分でしょうか? その場合、既存の Django 認証ミドルウェアを削除する必要がありますか?

現在、アプリの初期バージョンで API エンドポイントにアクセスしようとすると、通常の Django ログイン フォームのように見える画面に誘導されます。有効なユーザー名とパスワードを入力しても機能せず、再度ログインするよう求められます。基本的な Django 認証を削除すると、これを防ぐことができますか? ログインを求められるようにしたいのですが、これらのテクノロジーでそれを処理する方法がわかりません。

パッケージ django-rest-auth は便利なようで、同じグループが Angular モジュールを作成していますが、ドキュメントはインストールと提供されたエンドポイントをはるかに超えていません。最終的に、この質問の核心は、認証を Django が提供するものから django-rest-auth や DRF が推奨する他のサードパーティ パッケージの 1 つに完全に切り替えるにはどうすればよいかということだと思います。

編集: 以下にこのコメントを作成しましたが、結合された認証がどのように機能するかを理解する必要があることに気付きました。私は単一ページのアプリを構築していないので、個々の基本的なページは Django から提供されますが、各ページはさまざまな API エンドポイントにアクセスして、必要なデータを取得します。django-rest-auth のようなものですべての認証を処理する方法はありますか?

0 投票する
4 に答える
1104 参照

python - カスタム ユーザーの実装時のエラー

電子メールを主キーとしてカスタム ユーザーを実装します。django rest と django-rest-auth をインストールすると、以下のエラーが発生します。

django がスローしているエラーは次のとおりです。

django-rest-auth がユーザー名を電子メールとして受け入れるオプションはありますか? シリアライザーとビューをオーバーライドしようとしていますが、これが最も安全なオプションかどうかはわかりません。

models.py

設定.py

rest_swagger によるトレースバック

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

python - DjangoはAbstractUserを拡張し、電子メールフィールドを他のフィールドのデフォルトとして使用します

私はDjango 1.9.2をPython 2.7.3、残りのフレームワーク、およびallauthで使用しています。私はdjango.contrib.auth.models.AbstractUserから拡張しており、AbstractUserからメールフィールドを取得し、他のフィールドのデフォルトとして使用したい:

しかし、このコードを使用すると、次のエラーが発生します。

メール属性を取得する方法は何ですか?