0

私は Django を初めて使用し、Drupal ファミリーの出身です。そこには、コンテンツとサブサイトのグループを作成できるオーガニック グループがあります。Djangoでそのようなことをするにはどうすればよいですか?

Django を使用して会社用にこのサイトを作成していて、会社のすべての部門がサイトにプライベート セクションを必要としているとします。たとえば、デザイン担当者は、バックエンド開発者が入ることができない Web サイトの独自の部分を持っています。バックエンド開発者も同じことをします。

Django admin にログインし、新しいカテゴリ、サブサイト、またはグループ (Django 用語が何であれ) を他のグループと同じ設定または同様の設定で追加するだけの方法でサイトを構築したいと考えています。

4

1 に答える 1

0

「プライベートセクション」の意味によって異なります。おそらく、別の角度から見てみる必要があります。

Djangoは「アプリ」によってサイトの機能を分割します。各アプリは特定のことを行い、データベース内の一連のテーブルを取得します。アプリは互いのテーブルにアクセスできます。たとえば、他のアプリが Auth アプリのユーザー、グループ、およびアクセス許可のテーブルにアクセスするのはよくあることです。これが「サブサイト」の意味ですか?

アクセス制御に関しては、ユーザーをグループに割り当てることができ、さまざまな管理権限をユーザーに割り当てることができます。追加、変更、および削除のパーミッションは、各モデル (つまり、データベース テーブル) に対して自動的に生成されます。独自の権限を追加することもできます。

Django レベルで設計者とバックエンド開発者を切り離すことはできないと思います。それぞれ別のソース リポジトリを維持し、それらをマージして使用可能なサイトを作成するなど、別のことを行う必要があります (各グループは他のグループへの読み取り専用アクセスを持ちます)。これらの要素が絡み合う可能性があるため、チームの規律に大きく依存します。

Django では、静的ファイルは別の方法で提供することをお勧めします。たとえば、Web サーバーから直接提供するか、単純な HTTP サーバー (CGI/WSGI などを使用しない) を備えた別のマシンから提供することをお勧めします。これは、Django が直接サービスと比較して静的ファイルのみを遅くできるためです。ただし、テスト用に、有効にできる静的ページ サーバーがあります。

以上のことから、静的ファイルは通常、CSS、画像、メディア、および JavaScript に相当します。これらのうち、バックエンドの人々は JS をいじりたいかもしれませんが、それだけなので、これはデザイナーのリポジトリにある可能性があります。

Django ツリー自体には、サイトとアプリのコードが含まれています。それはほとんどすべてバックエンドのものです。例外は、各アプリの「templates」ディレクトリにある HTML テンプレート ファイルです。これらは、バックエンド ビュー コードによって提供されるコンテキスト データで埋められるファイルです。これが皆さんにとってフロントエンドなのかバックエンドなのか、私にはわかりません。CSS 規律がたくさんある場合は、ほとんどがバックエンドになる可能性がありますが、それはありそうにないと思います。

Django でできることは、一方または他方の生活を楽にすることがたくさんあります。たとえば、テンプレート タグを使用すると、カスタム Python コードで HTML を生成してページに挿入できます。たとえば、これらを使用してタブ バーやペインを生成します。

お客様のニーズをよりよく理解することなくして、これ以上のことはできません。質問はまだ漠然としています。おそらく、1 日か 2 日かけてチュートリアルを読み、Django のパースペクティブが何であるかを確認してから、それがニーズにどのように適合するか (または適合するか!) を理解するのが最善でしょう。

于 2012-05-24T01:41:37.177 に答える