私のdjangoアプリケーションでは、クライアントがWebページをカスタマイズできるようにしています。 これを行うために、テンプレートを生成するためのモデルを作成しました。実際にはうまくいきました。私の問題は、管理フォームにプレビューリンクを追加したいということです。 この方法で、テンプレートを保存するために「保存して編集を続ける」ことができます。必要に応じて、このリンクをクリックしてページの編集中にプレビューすることができます。Django管理フォームでオブジェクトをプレビューするための特別リンクを追加
既にリスト表示からプレビューを有効にしていますが、このフィールドをフォームに直接表示します。
def get_absolute_url(self):
return "preview/%i/" % self.id
def preview_template(self):
return '<a href="' + self.get_absolute_url() + '" target="_blank">Preview</a>'
preview_template.allow_tags = True
preview_template.short_description = 'Preview'
class BlockPageAdmin(admin.ModelAdmin):
list_display = (... 'preview_template',)
これは機能していますが、更新フォームに直接追加する方法はありますか?
UPDATE
私はそれがこの問題の主なアイデアに従うことによって、作業ました:Adding an extra button to one object in django admin
は、私はようやく私のモデルの管理者設定でJavaScriptのファイルを追加し、私が生成するjavascript関数を書きましたプレビューオブジェクトのURLプレビューを表示するためのビューを書かなくてはなりませんでした。ポストのソリューションとの違いは、サブミット入力の代わりにボタンを押したことに加え、プレビューページのポップアップをジャバスクリプトが開くことでした。したがって、変更をプレビューする際にモデルを更新することができる管理インターフェースにはまだいます。
ありがとうございました!
標準のWebページのプレビュー用に2つのボタンを追加し、モバイル版用にもう1つのボタンを追加したので、この場合は使用できませんでした。ありがとうございました! – DoRivard