2017-11-26 2 views
0

私は、ページに配置された最初の画像に基づいてサムネイルを作成しています。私は、これを行う最善の方法はファイラープラグインに直接アクセスすることであると考えていました。ファイルのプラグインに直接アクセスしてサムネイルのページをリンクします

私がこれを行う方法についてのドキュメントは明確ではありません。誰か知っていますか?私は私が使用してページタイトルにアクセスできることを知っている

from cms.models import Title 

Title.objects.all() 

は、各ページ上の画像にアクセスするための類似の方法はありますか?

答えて

0

あなたがそうのようなファイラーのイメージモデルにアクセスすることができます:あなたが、プレースホルダにある画像にアクセスしようとあなたが得るために、以下を使用してビューを表示しているしている場合 :

from filer.models.imagemodels import Image 

Image.objects.all() 

編集cmsplugin_filerのインスタンスを表示します。 (これはテストされていませんが、うまくいけば助けてください)

if request.current_page: 
    placeholders = request.current_page.placeholders.all() 
    plugins = [] 

    for placeholder in placeholders: 
     plugins += list(placeholder.get_plugins().filter(plugin_type='PicturePlugin')) 

    images = [p.image for p in plugins] 
+0

スポットで!イメージが特定のページで使用されたときの検証方法を知っていますか? – Josh

+0

@Joshあなたはページのプレースホルダで使用されているのですか?または、カスタムページ拡張モデルを追加しましたか?私はあなたのDjangoのCMSを使用すると仮定します – Pblove

+0

私は確かですが、私はこれに非常に新しいです。私が求めていることが意味をなさないならば、私はお詫び申し上げます。私はCMSのファイラープラグインを介して個々のページに画像を追加しました。私は自分自身をブログにしています。それぞれのブログ投稿を表すサムネイルのライブラリを作成したいと考えています。サムネイルは自動的に生成するのが理想的です。あなたが提案したコードは、ファイラーにアクセスしました。ページ上で使用されたかどうかを見つける方法があるのか​​、ページオブジェクトに詳細があるかを確認する方法があるかどうか疑問に思っています。 – Josh

関連する問題