我一直致力于this side project,它有效地取代了Django的默认FileField
和ImageField
课程。更多的薄包装真的,它可以让你改变这个:
attachment = models.FileField(upload_to="attachments")
image = models.ImageField(
upload_to="images",
width_field="image_width",
height_field="image_height"
)
进入这个:
attachment = EncryptedFileField(upload_to="attachments")
image = EncryptedImageField(
upload_to="images",
width_field="image_width",
height_field="image_height"
)
并神奇地加密所有事情。
问题是,虽然它到目前为止运作良好,并且我有tests,但包装仍然很麻烦。
具体做法是:
cd
进入demo
并运行./manage.py test
,并且必须有一个从该目录到../django_encrypted_filefield
的符号链接。这不是"权利"这样做的方法......对吗?setup.py
正在工作pip install -e git+...
并且工作正常,但我不认为应该包含demo
,对?但如果我把它排除在外,那么测试呢?TL; DR :有人能指出我做一个简单的django模块进行测试&包装"对"?
答案 0 :(得分:1)
我不知道如何在演示之外运行测试。你需要cd 进入demo并运行./manage.py测试,必须有一个符号链接 该目录为../django_encrypted_filefield。这可能不是 "右"做到这一点的方法......对吧?
您可以将demo / demo的内容移动到demo,并将demo / manage.py移动到基本文件夹。
现在您只需在基础文件夹
中运行./manage.py test理想情况下,我想设置tox来执行通常的pep8&单元测试运行, 但我不知道如何为一个依赖Django的项目做到这一点。
也许使用Makefile调用make test,并自动运行./manage.py测试。同样适用于pep8
TL; DR:有人能指出我做一个简单的django模块进行测试 &安培;包装"对"?
我知道可以拥有一个外部应用程序并在你自己的django项目中使用它,如果我是正确的,那就是你要去的。您只需在INSTALLED_APPS
settings.py
中的*this
中添加应用(例如您的应用)即可。
这里是example。 (django的小叶) 另一个例子specifically about the tests。
我不确定包装。