3

私のアプリには、画像の大きなフォルダー構造が含まれています。本番環境では、イメージは CDN から提供されます。開発では、開発サーバーで利用可能なイメージの小さなサンプルがあります。

url_for/static フォルダーからファイルを提供するために使用することに慣れています。

<img src="{{ url_for('static', filename='images/logo.png') }}"/>

/static フォルダーは、アプリケーションっぽいもの (js、css、ロゴやボタン アイコンなどの画像など、テンプレートに付随するもの) にのみ使用したい

アプリケーションのメイン データは、画像の巨大なレポです。これはソース コードではなく、CDN にあります。

私はこれをしたい:

<img src="{{ url_for('image_repo', filename=viewmodel.imagename) }}"/>

そして、これを次のように翻訳します。

発達:

http://devbox/folder/images/blahblah.png

製造:

http://cdn.domain.com/bucket/blahblah.png

Flask のドキュメントでは、エンドポイント関数の作成について説明しています。エラーが発生するため、正しく実行していません。エラーはこのエンドポイント関数ではなく、url_for にあります。「werkzeug.routing.BuildError」と表示され、次のように表示されます。BuildError: ('image_repo', {'filename': u'blahblah.png'}, None)

これが私のエンドポイント関数です。私はそれが間違っていることを知っています。

@app.endpoint('image_repo')
def image_repo(filename):
    # use settings to figure out if this is dev or prod
    # then what ????
    pass
4

1 に答える 1