問題タブ [django-sites]
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.
python - Django 1.7 マルチサイト ユーザー モデル
単一のデータベースで複数の Web サイトを提供する Django アプリケーションを提供したいと考えていますが、ユーザー セットは異なります。ブログ アプリケーションのように考えてください。テーマの異なる複数のドメインで使用されますが、モデルにサイト フィールドを追加することで同じデータベースを使用します。
その仕事にはDjango の SitesFrameworkを使用します。しかし問題は、サイトごとにユーザー モデルを分離できなかったことです。サイトごとに一意のサイト フィールドと電子メール フィールドで同じユーザー モデルを使用したいと考えています。
AbstractUser
私はそのようなモデルを拡張しようとしました:
しかし、そのエラーが発生します:'Member.email' must be unique because it is named as the 'USERNAME_FIELD'.
その問題のベストプラクティスは何ですか?
python - django adminのサイトに関係なく、すべてのモデルインスタンスを表示します
サイト フレームワーク (ミドルウェアを含む) を有効にし、2 つのサイト (ID=1 と ID=2) をセットアップしました。私のモデルの 1 つは、サイトへの外部キーを使用します。議論のために、このように見えるとしましょう
私のsettings.pyにはSITE_ID = 1があります
管理画面で person のインスタンスを作成し、そのサイトを ID=2 のサイトに設定すると、作成されますが、現在の管理画面では非表示になります。
これは私には直感に反するようです。単一の django 管理画面を使用して 2 つのサイトを管理したいと考えています。私のlist_displayには「サイト」があるので、すべてのインスタンスが表示された場合、それがどのサイトに関連しているかがわかります。
サイト ID に関係なく、管理画面でモデルのすべてのインスタンスが表示されるようにする方法はありますか?
すべてのモデル インスタンスを管理するために 2 つの個別の管理 URL にログインする必要はありません。
django-sites - django-sitetree のアイコンが表示されない
admin/sitetree のアイコンが表示されません。
URLの問題に違いない..私にはわかりません。
助けが必要です。
python - Django Admin で、「サイトで表示」ボタンにサイトを無視させるにはどうすればよいですか?
サイト アプリケーションを Django アプリに追加する前は、[サイトで表示] ボタンは相対パスを使用していました。私のサイトはいくつかの異なるドメインとステージング環境を介してアクセスされるため、これは役に立ちました。
最近、Flat Pages アプリケーションを使い始めたので、Sites アプリケーションもインストールしました。
この変更後、すべての [サイトで表示] ボタンは、Django 管理者にアクセスするドメインへの相対パスではなく、アプリの既定のサイトで指定されたドメインを使用します。
[サイトで表示] ボタン (またはget_absolute_url()
関連する各モデルの機能) をオーバーライドして、サイト ドメインを無視し、相対パスを使用するように戻すことはできますか?
django - Django のサイト フレームワークで FQDN を「ドメイン」として使用する必要がありますか?
非 www ドメインへのリクエストがサーバーによってhttp://example.com
(ステータス 301 で) リダイレクトされるWeb サイトがhttp://www.example.com
あります。
Django のフレームワークを使用している場合、ドメインをまたはsites
に設定する必要がありますか? 私が見たすべてのドキュメントは、常にドメインを として参照しています。サイト フレームワークがドメインを として参照するか、単にとして参照するか、私は混乱しています。Django のドキュメントでは、ドメインを「Web サイトに関連付けられたドメイン名」と定義しています。これは、wwwの部分がなければいいと思います。しかし、これはサイトマップを壊します (Django は www なしですべての URL を生成します)。example.com
www.example.com
example.com
full qualified domain name
domain name
設定は、混乱のPREPEND_WWW
もう 1 つの理由です。Django は、ドメインを として定義し、example.com
この設定を使用して先頭に追加することを望んでいるように見えますwww
。
django-models - Django 管理者の変更リストに現在のサイトのインスタンスのみを表示する方法
1 つのサイトにのみリンクしたいモデルがあります。ドキュメントの例を使用します。
ただし、各サイトの管理画面では、サイトの設定に関係なく、すべてのオブジェクトが表示されます。したい:
- 管理変更リスト データセットを、サイトが現在のサイトであるインスタンスに制限します
- 現在のサイト セットを使用して新しいフォームを自動的に設定します (オプションで非表示にします)。
事態を複雑にするために、このモデルもまた、adminsortable.Sortable
深刻な問題を引き起こすとは考えていません。
python - django でサイト フレームワークをセットアップする方法
django で単一のプロジェクトから複数のサイトをセットアップしようとしています。https://docs.djangoproject.com/en/1.8/ref/contrib/sites/に従ってこれをセットアップしようとして いましたが、一度実装されたサイト フレームワークの使用方法のみのセットアップについては言及されていません。
以前にサイトを実装したことがあり、インストールしたアプリに次のようにサイトを追加しました。
コマンドを発行しようとしました: python manage.py makemigrations しかし、それは言う:
変更が検出されませんでした
私は django 1.8 を使用していますが、サイト フレームワークのセットアップはまだ django_site というテーブルを作成しますか?
このテーブルを作成するための初期設定を行うにはどうすればよいですか?