0

私は次のようにプラグインを書きます:

def init_app(self, app, blueprint):
    self.app = app
    @blueprint.route('/static/'+JSGLUE_JS_NAME, methods=['GET'])
    def serve_js():
        return make_response(
                (self.generate_js(), 200, {'Content-Type': 'text/javascript'})
        )

ただし、url_for は機能しません。 BuildError: ('main.serve_js', {}, None)

「python manage.py shell」を実行すると、アプリの作成後にエンドポイントが app.url_map にあることがわかりましたが、スクリプトで作成したときに見つかりませんでした。

4

1 に答える 1

1

私はおそらくブループリント blueprintに名前を付けませんが、別の名前を付けます。

設計図を登録しましたか?

次に、ルートを定義するときに私がすること

@something.route('/static/<JSGLUE_JS_NAME>', methods=['GET'])

次に、ルートの呼び出しにurl_forはおそらく次のパターンがあります。

url_for('something.static', filename='mysuperfile.js')

しかし、もう少し詳細がないと、助けるのは難しいです

于 2015-12-29T13:27:22.130 に答える