一个简单的应用程序,用于管理新闻编辑室人员和组织结构。
项目描述
django-editorial-staff
django-editorial-staff
是一个简单的Django应用程序,用于存储和管理新闻编辑室人员以及他们在其中的组织结构。
它包含一个强大的API,其他应用程序可以将其作为组织用户“唯一可信来源”。
它还包含一个“数据提供者”功能,可以从第三方服务快速自动获取用户数据(并附带一个用于Slack组织的“数据提供者”)。
快速开始
-
安装此应用程序
pip install django-editorial-staff
-
将四个条目(三个辅助应用程序和“editorial_staff”)添加到您的INSTALLED_APPS设置(在
settings.py
)中,如下所示INSTALLED_APPS = [ ... 'bootstrap3', 'colorfield', 'rest_framework', ... 'editorial_staff', ]
-
将以下行添加到您的
settings.py
文件中(以配置表单渲染)BOOTSTRAP3 = { 'field_renderers': { 'default': 'bootstrap3.renderers.FieldRenderer', 'inline': 'bootstrap3.renderers.InlineFieldRenderer', 'immaterial': 'editorial_staff.field_renderers.ImmaterialFieldRenderer', }, }
-
将editorial_staff URLconf包含到您的项目urls.py中,如下所示
url(r'^staff/', include('editorial_staff.urls')),
-
运行
python manage.py migrate
以创建人员模型。 -
启动开发服务器并访问http://127.0.0.1:8000/staff/以查看人员列表并添加其他人。
-
访问http://127.0.0.1:8000/staff/api/以探索应用程序的REST API。
配置
包含的几个设置允许您自定义大多数关于 django-editorial-staff
的方面。
与“数据提供者”功能相关的设置将在下一节中讨论。其他可用的设置包括:
设置名称 | 默认值 | 说明 |
---|---|---|
EDITORIAL_STAFF_BASE_URL |
'' (空字符串) |
可选。 该应用/项目所在服务器的完整URL。用于生成通过Slack发送的链接。 |
EDITORIAL_STAFF_LOGOUT_URL |
None |
可选。 一个视图的命名URL模式,该视图用于注销用户。如果为空,则不会在应用全局导航中包含注销链接。 |
EDITORIAL_STAFF_EMAIL_DOMAIN |
'example.com' |
可选。 大多数工作人员接收电子邮件的域名。主要用于在工作人员创建表单上生成 user@example.com 的占位文本。 |
EDITORIAL_STAFF_API_NAME |
'Staff API' |
可选。 该应用生成的API的品牌名称。仅在Django REST framework生成的页面上显示。这不是很重要;只是在这里列出,因为很容易将其传递给REST framework。 |
数据提供者配置
django-editorial-staff
的数据提供者配置分为两部分
-
使用
EDITORIAL_STAFF_DATA_PROVIDER
设置,一个可以包含正在使用的提供者路径的字符串(或None
以不使用数据提供者来使用应用),以及 -
使用
EDITORIAL_STAFF_DATA_PROVIDER_OPTIONS
设置,为所选提供者提供额外的选项的字典。
第二个设置旨在具有灵活性,其字典包含对活动提供者相当独特的属性。
目前,该应用仅包括一个提供者('editorial_staff.data_providers.SlackProvider'
),它允许用户从连接的Slack工作区检索工作人员数据。此提供者在 EDITORIAL_STAFF_DATA_PROVIDER_OPTIONS
中可以定义两个可能的值
notification_channel
,这是发布“创建新工作人员”公告的Slack频道的名称,以及excluded_email_domains
,它阻止Slack用户数据被导入到新的工作人员对象中,如果Slack用户的电子邮件地址域在此列表中。
注意: 如果 EDITORIAL_STAFF_DATA_PROVIDER
设置为 None
(或完全从 settings.py
文件中省略),则不会连接任何提供者。
与Slack集成
要开始使用Slack数据提供者,请遵循上述安装步骤,然后执行以下操作。
-
安装以下Slack提供者特定的依赖项
pip install probablepeople~=0.5.4 pip install slacker~=0.9.0
-
将上面提到的数据提供者设置添加到您的
settings.py
文件中... EDITORIAL_STAFF_DATA_PROVIDER = 'editorial_staff.data_providers.SlackProvider' EDITORIAL_STAFF_DATA_PROVIDER_OPTIONS = { 'notification_channel': 'staffer-announcements', # Can also be omitted } ...
(其中
staffer-announcements
是您希望每当添加工作人员时接收消息的通道名称)。 -
在您的Slack工作区中创建一个API令牌,并将其添加到您的
settings.py
文件下的SLACK_TOKEN
名称。
前端开发
django-editorial-staff
前端页面使用ES6和SCSS构建,并且该应用包括一个Gulp安装,可以将这些方言编写的文件转换为纯JavaScript和CSS。
当在前端开发时,您需要自行运行此Gulp安装。按照以下步骤开始。
-
打开一个终端窗口,并导航到该应用的根目录。
-
在应用内部,导航到
./editorial_staff/staticapp
。 -
如果这是您第一次在此项目上运行Gulp,请运行
npm install
以安装JS依赖项。这可能需要几分钟。 -
一旦安装了依赖项,请运行
gulp
以开始本地开发。 -
当您的 Gulp 服务器显示已启动并运行时,请访问 http://127.0.0.1:3000/staff/ 以预览您的前端文件。
-
通过修改位于
./editorial_staff/staticapp/scss/
和./editorial_staff/staticapp/js/
的文件来继续修改您的前端界面。您的更改将自动应用于 Gulp 服务器 URL,无需手动重新加载页面。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源分布
构建分布
哈希值 for django_editorial_staff-0.8.0-py2.py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e1df51005312bef32473b33b05d50dd07354940a75fa07c240f10e2911bc2c6c |
|
MD5 | 6228085bddd1c0877475dc0d8534b6d3 |
|
BLAKE2b-256 | 1cd22c73e18759e60e80efa73e90ed5d006071306c6d097a03523256bc0fdb53 |