如何在 python 点环境文件中定义列表?
How to define lists in python dot env file?
在快速 API 文档中,建议使用 .env 加载配置。只是据我所知它只支持字符串。
from fastapi import FastAPI
from pydantic import BaseSettings
class Settings(BaseSettings):
api_tokens = []
class Config:
env_file = ".env"
settings = Settings()
app = FastAPI()
我通常每隔几个月更改一次 API 标记,在列表中添加一个新标记,一段时间后我删除旧标记。这使用户有足够的时间升级到最新版本而不会受到任何干扰。同时,两个 API 令牌将在一段时间内有效。
但我无法在 .env
文件中定义列表。
API_TOKENS = abc123,abc321
我是不是漏掉了什么?
更新:
其实是可以的。
下面的答案是正确的,但是我仍然不得不像这样更改类型:
class Settings(BaseSettings):
api_tokens: list
这应该有效,
API_TOKENS = ["abc123","abc321"]
在快速 API 文档中,建议使用 .env 加载配置。只是据我所知它只支持字符串。
from fastapi import FastAPI
from pydantic import BaseSettings
class Settings(BaseSettings):
api_tokens = []
class Config:
env_file = ".env"
settings = Settings()
app = FastAPI()
我通常每隔几个月更改一次 API 标记,在列表中添加一个新标记,一段时间后我删除旧标记。这使用户有足够的时间升级到最新版本而不会受到任何干扰。同时,两个 API 令牌将在一段时间内有效。
但我无法在 .env
文件中定义列表。
API_TOKENS = abc123,abc321
我是不是漏掉了什么?
更新:
其实是可以的。 下面的答案是正确的,但是我仍然不得不像这样更改类型:
class Settings(BaseSettings):
api_tokens: list
这应该有效,
API_TOKENS = ["abc123","abc321"]