quart.helpers モジュール#
- quart.helpers.abort(code: int | Response, *args: Any, **kwargs: Any) NoReturn#
指定されたステータスコードの HTTPException を発生させます。
- quart.helpers.find_package(name: str) tuple[Path | None, Path]#
パッケージのインストールプレフィックス (または None) とそれを含むフォルダを見つけます
- async quart.helpers.flash(message: str, category: str = 'message') None#
セッションストアにメッセージ (オプションでカテゴリ付き) を追加します。
これは通常、セッションに保存され、他のリクエスト中に表示されるメッセージをユーザーにフラッシュするために使用されます。例えば、
@app.route('/login', methods=['POST']) async def login(): ... await flash('Login successful') return redirect(url_for('index'))
は、引数などを渡すことなく、index ルートでフラッシュされたメッセージを表示することを可能にします。メッセージの取得については、
get_flashed_messages()を参照してください。
- quart.helpers.get_debug_flag() bool#
QUART_DEBUG 環境変数を読み取り、アプリをデバッグモードで実行するかどうかを判断します。設定されていない場合、開発モードが設定されていれば自動的に有効になります。
- quart.helpers.get_flashed_messages(with_categories: bool = False, category_filter: Iterable[str] = ()) list[str] | list[tuple[str, str]]#
セッションに保存されているフラッシュメッセージを取得します。
これは、グローバル関数として公開されているテンプレートで主に役立ちます。例:
<ul> {% for message in get_flashed_messages() %} <li>{{ message }}</li> {% endfor %} </ul>
category_filterの使用には注意が必要です。すべてのメッセージがポップされますが、フィルタに一致するメッセージのみが返されます。メッセージの作成については、flash()を参照してください。
- quart.helpers.get_load_dotenv(default: bool = True) bool#
ユーザーが
QUART_SKIP_DOTENVを設定することでデフォルトの dotenv ファイルの読み込みを無効にしたかどうかを取得します。デフォルトはTrueで、ファイルを読み込みます。 :param default: 環境変数が設定されていない場合に返す値。
- quart.helpers.get_template_attribute(template_name: str, attribute: str) Any#
テンプレートから属性を読み込みます。
これは、Python コードでテンプレートの属性を使用する場合に便利です。
- パラメータ:
**template_name** - 属性を読み込むテンプレート名。
**attribute** - 読み込む属性名
- async quart.helpers.make_push_promise(path: str) None#
プッシュプロミスを作成するシンプルなラッパー関数です。
これは、プロトコルが HTTP/2 の場合にクライアントにプッシュされるべきパスを受け取ります。
- async quart.helpers.make_response(*args: Any) Response | Response#
レスポンスを作成するシンプルなラッパー関数です。
これは、レスポンスを返す前に変更する場合に最も役立ちます。例:
response = make_response(render_template('index.html')) response.headers['X-Header'] = 'Something'
- quart.helpers.redirect(location: str, code: int = 302) Response#
ステータスコードを指定して、location にリダイレクトします。
- async quart.helpers.send_file(filename_or_io: bytes | str | PathLike | BytesIO, mimetype: str | None = None, as_attachment: bool = False, attachment_filename: str | None = None, add_etags: bool = True, cache_timeout: int | None = None, conditional: bool = False, last_modified: datetime | None = None) Response#
指定されたファイル名を送信するためのレスポンスを返します。
- パラメータ:
filename_or_io – 送信するファイル名(パス)。
safe_join()を使用することを忘れないでください。mimetype – 使用するMIMEタイプ。デフォルトでは推測されるか、DEFAULT_MIMETYPEに戻ります。
as_attachment – trueの場合、Content-Disposition attachmentヘッダーで添付ファイル名を使用します。
attachment_filename – ファイル名が異なる場合のファイル名。
add_etags – ファイル名、サイズ、変更時刻に基づいてETagを設定します。
last_modified – 最終更新値を上書きするために使用されます。
cache_timeout – レスポンスをキャッシュする時間(秒単位)。
- async quart.helpers.send_from_directory(directory: bytes | str | PathLike, file_name: str, *, mimetype: str | None = None, as_attachment: bool = False, attachment_filename: str | None = None, add_etags: bool = True, cache_timeout: int | None = None, conditional: bool = True, last_modified: datetime | None = None) Response#
指定されたディレクトリからファイルを送信します。
- パラメータ:
directory – file_nameと組み合わせるとファイルパスになるディレクトリ。
file_name – directoryと組み合わせるとファイルパスになるファイル名。
その他の引数については、
send_file()を参照してください。
- quart.helpers.stream_with_context(func: Callable) Callable#
現在のリクエストコンテキストをジェネレーターと共有します。
これにより、ストリーミングジェネレーター内でリクエストコンテキストにアクセスできます。例:
@app.route('/') def index() -> AsyncGenerator[bytes, None]: @stream_with_context async def generator() -> bytes: yield request.method.encode() yield b' ' yield request.path.encode() return generator()
- quart.helpers.url_for(endpoint: str, *, _anchor: str | None = None, _external: bool | None = None, _method: str | None = None, _scheme: str | None = None, **values: Any) str#
特定のエンドポイントのURLを返します。
これは、テンプレートやリダイレクトでブラウザで使用できるURLを作成する場合に最も役立ちます。
- パラメータ:
endpoint – URLを構築するエンドポイント。
.が前に付いている場合は、現在のブループリント内のエンドポイントを対象とします。_anchor – 追加するアンカーテキスト(例:#text)。
_external – アプリケーション外部で使用するための絶対URLを返します。
_method – エンドポイントと共に考慮されるメソッド。
_scheme – 使用する特定のスキーム。
values – エンドポイントルールで指定されている、URLに組み込む値。