問題タブ [django-flatpages]

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

django - 特定のアプリケーション用にフラットページを拡張する

プロジェクトとその詳細ページを一覧表示するポートフォリオ アプリケーションがあります。通常、すべてのプロジェクトには同じ情報 (ギャラリー、概要など) がありますが、特に大規模なプロジェクトの場合、ユーザーが追加情報を追加したい場合があります。たとえば、そのページの資金調達に関する追加ページなどです。

ポートフォリオ アプリ内で上書きされたフラットページ モデルを作成して、そのアプリケーション内で作成されたフラットページが常に /portfolio/project-name/flat-page で始まるようにすることは可能でしょうか。次に、プロジェクトに関連付けられたフラットページへのリンクをテンプレートに渡すだけで、ユーザーが生成したフラットページがプロジェクト ページから自動的にリンクされるようになります。

編集

私は今それがいくらか働いています

そこで、ポートフォリオ アプリの FlatPage モデルを次のように上書きします。

これにより、このフラットページを特定のプロジェクトに関連付けることができます。

次に、save メソッドを上書きして、ユーザーが保存するときにすべての追加情報を書き込みます (整理する必要があります)。

そして、管理者をスケールバックして、重要なものだけを許可します。

これで、ユーザーはアプリ内にフラット ページを追加し、それを特定のプロジェクトに関連付けることができます。

admin では、ページのスラッグを入力するだけで、次のように save() メソッドを介して自動的に追加されます: /projects/project-name/flat-page-name/

残りの問題はテンプレート側にあります。指定されたテンプレート タグ {{ flatpage.title }} および {{ flatpage.content }} を介して通常のフラットページ情報にアクセスできます。継承されたモデルの追加フィールド (つまり、プロジェクト フィールド) にはアクセスできません。

とにかくこのあたりはありますか?

EDIT2

考えてみると、最も簡単な方法は、テンプレート タグを記述して、フラットページに関連付けられた projectFlatPage を見つけ、そこからアクセスすることです。デフォルトの flatpages テンプレート タグを上書きするのと少し似ています

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

python - djangoの拡張フラットページのフィールドへのアクセス

djangoの拡張フラットページのフィールドにアクセスするには?
私はこれを書きました:

また、管理者での作成は問題ありません。しかし、 flatpages/default.html でこれを試しました:

そして、flatpage.teaser はありませんでした。なにが問題ですか?

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

django - djangoアプリで複数のフラットページモデルを使用するにはどうすればよいですか?

フラットページに変換できる複数のモデルがありますが、いくつかの追加情報が必要です(たとえば、私たちについてのページがありますが、ブログもあります)。
ただし、ミドルウェアはフラットページインスタンスのみを返し、子モデルを解決しないため、フラットページモデルは1つだけでなければならないことを理解しています。
私は何をしなければなりませんか?

編集:
ビューを変更する必要があるようです。
現在のコードは次のとおりです。

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

django - include()とフラットページの混乱

私はApress:Practical Django Projectsをフォローしていますが、少し混乱するようなことがありました。

フラットページを指すようにurl.pyを設定すると、次のようにすると正常に機能します。

しかし、これを行うと機能しません:

それは私にそれを教えてくれます:

'module'オブジェクトには属性'urls'がありません

DjangoとPythonの両方についての私の知識はかなり限られているので、これは本当に明白かもしれませんが、何が起こっているのかを理解するのはいいことです:)

ありがとう

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

django - Django フラットページで jquery を使用する

Django Flatpages で jquery と jquery Ui を使用できますか? ファイルをローカルでホストする必要がありますか、それとも外部の場所を指定できますか??

ありがとう :)

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

django - Django flatpages のデフォルト サイト

ほとんどの場合、1 つのサイトに (サイト フレームワークから) フラットページを使用します。作成されたすべてのフラットページに対して既存のサイトのデフォルトをマークするにはどうすればよいですか? 作成するページごとに同じサイトを毎回選択するのは時間の無駄です。モデルまたは保存方法でこれをオーバーライドする方法はありますか?

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

django - djangoフラットページをキャッシュすることは可能ですか?

djangoフラットページをキャッシュすることは可能ですか?私がコードを見ると、それは行われていないようです...

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

python - 保存されていないDjangoフラットページのコンテンツ

flatpages パッケージを追加し、管理インターフェイスに flatpage を追加しようとしました。タイトルと URL は追加されますが、ページのコンテンツは追加されません。フラットページのコンテンツは、YAHOO.widget.Editor で編集されます。フラットページのコンテンツが保存されない理由と、この問題を解決する方法を知っている人はいますか?

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

django - 複数のサイトと同じURLでDjangoのフラットページを使用するには?

私は 5 つのサイトを持っており、それぞれが独自のドメインにあり、1 つの django プロジェクトで実行されています。現在、すべてのサイトには、 url の下の flatpages によって提供される同じ連絡先ページがあります/contact/。ただし、各ドメインで同じ URL を使用して、サイトごとに連絡先ページを作成する方がはるかに優れています。

ジャンゴのフラットページでこれを達成するにはどうすればよいですか? (それとも他のものを見た方がいいですか?)

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

django - flatpages を使用してシンプルな Facebook アプリを作成するが、signed_request によって CSRF 問題が発生する

クライアントの fb ページ用のシンプルな html のみの Facebook アプリを作成しようとしています。クライアントとそのスタッフがサイトのdjango管理者からアプリのコンテンツを変更できるように、djangoのフラットページを使用したいと思います。問題は、Django が 403「CSRF 検証に失敗しました。リクエストは中止されました」を返すことです。Facebook が独自の POST 情報を送信してアプリの URL にアクセスしようとすると、エラーが発生します。

@csrf_exempt デコレーターについては既に知っていますが、django.contrib コード内にあるため、フラットページ ビューに適用する方法がわかりません。さらに、ビューが特定の facebook.html テンプレート (default.html テンプレートではない) を呼び出すように求められた場合にのみ、csrf 保護を無効にしたいと考えています。たとえば、{% crsf_exempt %} テンプレート タグがあれば完璧です。

誰でもこの問題を解決する方法を考えられますか? それとも、django-flatpages を使用して Facebook アプリを提供するという考えをあきらめるべきでしょうか?