Django-表单过帐后如何添加用户的IP地址

5 python forms django ip listview

我知道,如果我位于请求功能内,则可以使用ipware.ip get_ip(request)或其他方法来获取用户的IP地址,但是我使用的是,(ListView, FormView)因此我不确定如何将IP添加到像我通常那样使用以下形式:

instance = form.save(commit=False)
instance.ip = get_ip(request)
instance.save()
Run Code Online (Sandbox Code Playgroud)

Fli*_*rPA 3

非常简单,使用request.META['REMOTE_ADDR'].

instance = form.save(commit=False)
instance.ip = self.request.META['REMOTE_ADDR']
instance.save()
Run Code Online (Sandbox Code Playgroud)

request.METArequest一般来说)有各种有用的信息。文档中的更多信息:https://docs.djangoproject.com/en/1.10/ref/request-response/#django.http.HttpRequest.META