我有一个项目要结构如下:
myproject
__init__.py
api
__init__.py
api.py
backend
__init__.py
backend.py
models
__init__.py
some_model.py
Run Code Online (Sandbox Code Playgroud)
现在,我想同时在api.py和backend.py中导入some_model.py模块。如何正确执行此操作?我试过了
from models import some_model
Run Code Online (Sandbox Code Playgroud)
但是失败并显示为“ ModuleNotFoundError:没有名为'models'的模块”。我也试过
from ..models import some_model
Run Code Online (Sandbox Code Playgroud)
然后给我“ ValueError:尝试相对顶级包进行相对导入”。我在这里做错了什么?如何从其他目录(不是子目录)导入文件?
我有一个项目,我无法运行测试,dotnet test而我的同事可以。我收到的错误消息是
System.IO.FileNotFoundException: No test is available in C:\projects\...\bin\Debug\netcoreapp1.1\Test.AnalyzeFirmwareRollout.dll. Make sure test project has a nuget reference of package "Microsoft.NET.Test.Sdk" and framework version settings are appropriate and try again.
Run Code Online (Sandbox Code Playgroud)
该项目确实引用了 Microsoft.NET.Test.Sdk 并且目标框架是
<TargetFramework>netcoreapp1.1</TargetFramework>
Run Code Online (Sandbox Code Playgroud)
在 csproj 文件中。有什么想法这里可能出什么问题吗?
我有一个 Flask API,我正在使用 Flask-SQLAlchemy 来处理 SQLite 数据库。我有一个存储日志条目的表,我想将最大行数限制为数字 n。由于插入也是使用原始 SQL 从 Flask 外部的另一个脚本进行的,因此我创建了一个触发器来检查行数并在行数大于 n 时删除最旧的行:
CREATE TRIGGER 'trigger_log_insert'
BEFORE INSERT ON 'connection_logs'
WHEN ( SELECT count(*) FROM 'connection_logs' ) > 5
BEGIN
DELETE FROM 'connection_logs'
WHERE id NOT IN ( SELECT id FROM 'connection_logs' ORDER BY id DESC LIMIT 5 );
END
Run Code Online (Sandbox Code Playgroud)
该触发器按预期工作,但我很难使用flask-sqlalchemy 设置它。如何使用flask-sqlalchemy 设置触发器/执行原始SQL?SQL 只需要在数据库创建后执行一次,因此我打算在 create_all() 语句之后立即执行它。我偶然发现了这个 StackOverflow 答案,它提出了一个显然很快就会被弃用的解决方案。我还阅读了有关自定义 DDL 的 SQLAlchemy 文档,但我不知道如何使用flask_sqlalchemy 创建此自定义 DDL。当我像 SQLAlchemy 文档中那样创建 DDL 时,我收到一条错误消息
DDL object is not bound to an …
我使用 Python 创建了 3 个证书:rootca.crt、intermediateca.crt 和 server.crt。我使用rootca.crt来签署intermediateca.crt,它按预期工作:
openssl verify -CAfile rootca.crt intermediateca.crt
intermediateca.crt: OK
Run Code Online (Sandbox Code Playgroud)
然后我用中间ca签署了server.crt,但验证失败:
openssl verify -CAfile rootca.crt -untrusted intermediateca.crt server.crt
server.crt: C = DE, ST = mein Bundesland, L = meine Stadt, O = meine Firma, CN = server.example.com, emailAddress = info@meine-firma.de
error 20 at 0 depth lookup:unable to get local issuer certificate
Run Code Online (Sandbox Code Playgroud)
当我解析证书时,server.crt 颁发机构密钥标识符与 middleca 主题密钥标识符相匹配。谁能给我提示可能出了什么问题?如果我使用 openssl 命令行工具生成相同的证书,它就可以工作。解析的内容是相同的,除了授权密钥标识符还包含 openssl 生成的证书的序列号和 cn 之外。
python-3.x ×2
.net-core ×1
c# ×1
flask ×1
openssl ×1
python ×1
sqlalchemy ×1
sqlite ×1
ssl ×1
xunit.net ×1