Django расширяет приложение, чтобы разрешить неаутентифицированные голоса

Я тестировал несколько приложений для голосования Django и нашел qhonuskan-votes, Мне удалось установить его, и он прекрасно работает. Однако я также хочу разрешить право голоса не прошедшим проверку пользователям, что я не могу сделать. Нужна помощь с этим, пожалуйста.

Here is the link for its models.py, views.py and compact.py files of this app.

модели

Просмотры

компактный

1 ответ

Вы можете написать собственное представление, которое будет выглядеть как голосование по умолчанию (запрос, модель, object_id, значение) из внешнего приложения, но без этого куска кода:

if not request.user.is_authenticated():
    return HttpResponse(status=401)

Также убедитесь, что вы отображаете свой пользовательский вид на правильный URL-адрес вместо того, чтобы включать URL-адреса приложения:

url(r'^vote/$', view='custom_vote', name='qhonuskan_vote'))

Это не лучшее решение, потому что вы просто переписываете код из внешнего приложения, и я не могу придумать какой-либо правильный способ переопределить представление по умолчанию таким образом, чтобы удовлетворить ваши потребности. Лучшим решением было бы использовать другое приложение, которое позволяет голосовать не прошедшим проверку пользователям (если несколько строк дополнительного кода не являются проблемой, вы можете использовать это).

Другие вопросы по тегам