Coopstarter应用程序
coopstarter-data的Python项目详细描述
Coopstarter应用程序数据存储库
该项目是一个python模块,与django rest框架和djangodp附加模块兼容,描述了未来coopstarter应用程序所需和可用的模型和api。
安装
以下是首选安装过程的详细说明。
根据操作系统和python的安装,命令可能必须使用python
或python3
运行。
使用SIB管理器
这是设置项目服务器端的更简单的方法,但众所周知它有一些问题,特别是在ubuntu上。
pip install sib-manager sib startproject coopstarter -m coopstarter_data -m django_countries -m djangoldp_account -m djangoldp_circle -m djangoldp_conversation -m oidc_provider@django-oidc-provider sib initproject
使用virtualenv
的替代安装过程如果您在--user
标志和permission denied
方面遇到一些错误,那么您应该首先尝试设置一个virtualenv。
那么整个过程是:
mkdir coopstarter
cd coopstarter
pip install virtualenv
virtualenv venv
source venv/bin/activate
pip install -U sib-manager
sib startproject coopstarter -m coopstarter_data -m django_countries -m djangoldp_account -m djangoldp_circle -m djangoldp_conversation -m oidc_provider@django-oidc-provider
cd coopstarter
sib initproject
如果您在最后一步sib initproject
中遇到有关缺少包的问题,请逐个安装所有方法包,例如pip install Pillow
等等……然后,再次运行此命令。
对于这两个安装过程,如果可以看到由initproject
命令执行的迁移,您就可以了。
运行项目
在控制台中,在包含manage.py文件的coopstarter服务器目录的根目录中,请运行以下命令:
cd coopstarter
python manage.py createsuperuser
python manage.py creatersakey
此命令将要求您提供一些信息(用户名、电子邮件、密码)以生成数据服务器的初始管理员。
python manage.py runserver
如果成功,此命令将在管理员后端127.0.0.1:8000/admin/
上可用。然后,您将能够使用在上一步中设置的凭据登录。
初始化数据库
由于提供了一些fixture来方便地丰富应用程序数据库,下面的命令将允许您正确地加载它们。
python manage.py loaddata ../venv/lib/python3.6/site-packages/coopstarter_data/fixtures/*.json
如果您通过symlink本地加载coopstarter_数据包进行开发,则应使用以下命令:
python manage.py loaddata coopstarter_data/fixtures/*.json
如果您对前面的命令有一些问题,例如Field table does not exist
或等效命令,请运行:
python manage.py makemigrations
python manage.py migrate
再次运行loaddata命令。
openidconnect配置
此服务器使用Django OIDC provider库来允许分布式身份验证。 这需要配置。首先需要以管理员身份登录,然后转到后端的openidconnect提供程序部分。
请选择:
- 公共为客户端类型
- id_tokentoken(隐式流)作为response type
http://localhost:3000
http://localhost:9000
http://127.0.0.1:3000
http://127.0.0.1:9000
http://0.0.0.0:3000
http://0.0.0.0:9000
http://localhost:8001
https://staging-app.happy-dev.fr
http://localhost?goto=http://some.url
作为重定向uri
- 然后检查生成的客户机id并将其保存在某个地方。