У меня есть вид из приложения третьего лица, подпись которого выглядит следующим образом:Могу ли я расширить функцию на основе представления?
@secure_required
def activate(request, activation_key,
template_name='userena/activate_fail.html',
retry_template_name='userena/activate_retry.html',
success_url=None, extra_context=None):
Как продлить эту функцию в чистом образом? Мне просто нужно предоставить некоторые необязательные параметры, но могу ли я сделать это без копирования всей функции в мой код, чтобы переопределить ее? Кажется, что в будущем это будет небезопасно, когда я обновляю версии этого стороннего приложения, так как их код может измениться.
Edit:
Если я пытаюсь просто переопределить URL, чтобы включить дополнительный параметр, он говорит, что вид получил неожиданный параметр.
Вот URL переопределение я делаю:
url(r'^activate/(?P<activation_key>\w+)/$',
userena_views.activate,
success_url='/foo/', name='userena_activate',),
Благодаря
Спасибо! Не знал, что вы можете обернуть и вернуть такую функцию. Тем не менее, мне даже не нужно заходить так далеко - я просто хочу добавить extra_context или success_url, но в представлении говорится, что он получает неожиданный параметр. – Joker
Я думаю, что 'success_url' должен быть словарем. Обновленный ответ. – mipadi
Да, в этом была проблема. спасибо – Joker