Skip to main content

利用通用内容类型的灵活提示和用户响应数据模式

项目描述

https://badge.fury.io/py/django-prompt-responses.svg https://travis-ci.org/graup/django-prompt-responses.svg?branch=master https://codecov.io/gh/graup/django-prompt-responses/branch/master/graph/badge.svg

利用 Django 的内容类型框架的灵活提示和用户响应数据模式。

这个应用程序是在大学研究项目期间诞生的。主要用例是数据收集。它使您可以创建多种“提示”(问题或任务)并记录用户响应。可以使用任何类型的数据库对象填充提示。

这支持这些类型的提示:

  • 您今天感觉如何(以 1-5 为标准)?(简单的李克特问题)

  • 您如何看待 1-10 级的 {object}?(基于对象的李克特问题)

  • 您将哪个词与 {object} 相关联?(基于对象的开放式问题)

  • 您认为 {object} 与这些其他对象的相关性如何?(标记任务)

评级和标签只是整数值,它们的含义可以由您的应用程序定义(例如 1 到 5 级,或 -1 = 否,+1 = 是,等等)。

文档

完整的文档位于https://django-prompt-responses.readthedocs.io

快速开始

安装 prompt_responses:

pip install django-prompt-responses

将其添加到您的INSTALLED_APPS

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    ...
    'prompt_responses',
    'sortedm2m',  # for the ability to change the order of Prompts in the Django admin
    ...
)

创建提示,例如通过集成的管理视图。

向用户提供提示:

prompt = Prompt.objects.get(id=1)
instance = prompt.get_instance()

"""
Use these variables to display the UI:
prompt.type
str(instance)
instance.object
instance.response_objects
"""

保存用户响应:

prompt = Prompt.objects.get(id=1)
prompt.create_response(
    user=user,
    prompt_object=instance.object,
    rating=5
)

分析数据:

prompt = Prompt.objects.get(id=1)
# Mean rating for all responses
rating = prompt.get_mean_rating()
# Mean ratings for all objects
matrix = prompt.get_mean_tag_rating_matrix()
# Mean ratings for one object
ratings = list(prompt.get_mean_tag_ratings(instance.object))

在 Django Rest Framework API 中使用包含的视图集:

from rest_framework import routers
from prompt_responses.viewsets import PromptViewSet

router = routers.DefaultRouter()
router.register(r'prompts', PromptViewSet)

urlpatterns = [
    url(r'^api/', include(router.urls))
]

这提供了api/prompts/api/prompts/<id>/api/prompts/<id>/instantiate/api/prompts/<id>/create-response/(POST)端点。

特征

  • 提示类型

    • 李克特量表评分

    • 开放式自由文本

    • 标记

  • 用对象填充提示,以便

    • 让用户对一组对象进行评分

    • 让用户评价(标记)两组对象之间的关系

  • 分析便利功能

  • (即将推出)可插入对象采样算法

  • 支持 Django Rest 框架

运行测试

学分

用于渲染此包的工具:

历史

0.1.0 (2017-11-07)

  • PyPI 上的第一个版本。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

django-prompt-responses-0.1.1.tar.gz (17.1 kB 查看哈希)

已上传 source

内置分布

django_prompt_responses-0.1.1-py2.py3-none-any.whl (21.0 kB 查看哈希)

已上传 2 7