Вопрос

Я переопределяю метод clean () в форме Django. Я хочу иметь доступ к IP-адресу клиента (при условии, что это связанная форма). Если бы у меня была ссылка на объект запроса, я мог бы легко получить ее из META (" REMOTE_ADDR "). Однако у меня нет ссылки на запрос.

Есть идеи, как это можно сделать?

Это было полезно?

Решение

Так что дайте себе ссылку на это.

class MyModelForm(forms.ModelForm):
    def __init__(self, *args, **kwargs):
        self.request = kwargs.pop('request', None)
        super(MyModelForm, self).__init__(*args, **kwargs)


    def clean(self):
        ip_address = self.request['META']['REMOTE_ADDR']

и по вашему мнению:

myform = MyModelForm(request.POST, request=request)
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top