├── tests ├── __init__.py ├── settings.py ├── test_mixins.py ├── test_models.py └── test_views.py ├── qa ├── migrations │ ├── __init__.py │ ├── 0012_remove_question_views.py │ ├── 0006_question_total_points.py │ ├── 0007_answer_total_points.py │ ├── 0009_auto_20160919_1528.py │ ├── 0010_auto_20160919_2033.py │ ├── 0002_auto_20160412_1336.py │ ├── 0004_answer_updated.py │ ├── 0008_auto_20160719_0729.py │ ├── 0011_question_slug.py │ ├── 0005_auto_20160519_1057.py │ ├── 0003_auto_20160414_1413.py │ └── 0001_initial.py ├── __init__.py ├── static │ ├── qa │ │ ├── icon.ico │ │ ├── user.png │ │ ├── qa_index.jpeg │ │ ├── qa_page.jpeg │ │ └── question.jpg │ └── css │ │ └── qa.css ├── templates │ ├── 403.html │ └── qa │ │ ├── update_answer.html │ │ ├── update_question.html │ │ ├── create_comment.html │ │ ├── profile.html │ │ ├── create_question.html │ │ ├── create_answer.html │ │ ├── base.html │ │ ├── index.html │ │ └── detail_question.html ├── apps.py ├── signals.py ├── admin.py ├── forms.py ├── mixins.py ├── utils.py ├── urls.py ├── models.py └── views.py ├── test_project ├── core │ ├── __init__.py │ ├── migrations │ │ └── __init__.py │ ├── tests.py │ ├── admin.py │ ├── models.py │ ├── apps.py │ ├── forms.py │ ├── templates │ │ ├── register.html │ │ └── login.html │ └── views.py ├── simpleqa │ ├── __init__.py │ ├── urls.py │ ├── wsgi.py │ └── settings.py ├── requirements.txt └── manage.py ├── .coveragerc ├── requirements.txt ├── manage.py ├── MANIFEST.in ├── docs ├── index.rst ├── installation.rst ├── make.bat ├── base.rst ├── settings.rst ├── conf.py └── Makefile ├── .travis.yml ├── AUTHORS.rst ├── runtests.py ├── LICENSE.md ├── .gitignore ├── setup.py ├── Makefile ├── CONTRIBUTING.rst └── README.rst /tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /qa/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test_project/core/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test_project/simpleqa/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test_project/core/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /qa/__init__.py: -------------------------------------------------------------------------------- 1 | default_app_config = 'qa.apps.QAConfig' 2 | -------------------------------------------------------------------------------- /.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | include = qa/* 3 | omit = *migrations*, *tests* 4 | -------------------------------------------------------------------------------- /qa/static/qa/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/swappsco/django-qa/HEAD/qa/static/qa/icon.ico -------------------------------------------------------------------------------- /qa/static/qa/user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/swappsco/django-qa/HEAD/qa/static/qa/user.png -------------------------------------------------------------------------------- /test_project/core/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /test_project/core/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | 3 | # Register your models here. 4 | -------------------------------------------------------------------------------- /qa/static/qa/qa_index.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/swappsco/django-qa/HEAD/qa/static/qa/qa_index.jpeg -------------------------------------------------------------------------------- /qa/static/qa/qa_page.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/swappsco/django-qa/HEAD/qa/static/qa/qa_page.jpeg -------------------------------------------------------------------------------- /qa/static/qa/question.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/swappsco/django-qa/HEAD/qa/static/qa/question.jpg -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | django-annoying>=0.10.4 2 | django-markdown-app>=0.9.4.1 3 | django-taggit>=0.22.2 4 | pytz>=2018.5 5 | django-hitcount>=1.3.0 6 | -------------------------------------------------------------------------------- /test_project/core/models.py: -------------------------------------------------------------------------------- 1 | from __future__ import unicode_literals 2 | 3 | from django.db import models 4 | 5 | # Create your models here. 6 | -------------------------------------------------------------------------------- /qa/templates/403.html: -------------------------------------------------------------------------------- 1 | {% extends 'qa/base.html' %} 2 | 3 | {% block content %} 4 |
·
43 | Github ·
44 | API ·
45 | Admin Panel22 | {% if question.reward %}{% endif %} 23 |
64 | {% if question.num_answers %}{% endif %} {{ question.title }}
65 |
66 | {% for tag in question.tags.all %}
67 |
102 | {% if question.num_answers %}{% endif %} {{ question.title }}
103 |
104 | {% for tag in question.tags.all %}
105 |
165 | {% endif %}
166 |
167 | 62 | {% if question.closed %} 63 |
This Question has been closed.
64 | {% else %} 65 | Answer this Question! 66 | Comment this Question! 67 | 72 | {% endif %} 73 | 74 |{{ comment.comment_text|markdown }}, {{ comment.user.username }}
{{ comment.comment_text|markdown }}, {{ comment.user.username }}
- {{ answer.user.username }} ({{ answer.user.userqaprofile.points }})
130 | {% if user.is_authenticated and answer.question.user == user and answer.question.closed == False %} 131 |