lulurami 2022-09-27 10:24 采纳率: 66.7%
浏览 27
已结题

Django后台如何获取用户在前端页面的最后登录时间和IP地址并写入MySQL数据库?

Django后台如何获取用户在前端的最后登录时间和IP地址并写入MySQL数据库?

以下是我写的代码块?

class Member(models.Model):    #models里的数据表格式
     membername = models.CharField(max_length=50)
     last_login_at = models.DateTimeField(default=datetime.now) 
     last_login_ip = models.CharField(max_length=50) 

def adminMemberinsert(request):  #views里的代码
     try:
         ob = Member()
         ob.membername = request.POST['membername']
         ob.last_login_at = ?      #如何获得用户的最后登录时间
         ob.last_login_ip = ?      #如何获得用户的最后登录IP地址
         ob.create_at = datetime.now().strftime('%Y-%m-%d %H:%M:%S') 
         ob.update_at = datetime.now().strftime('%Y-%m-%d %H:%M:%S') 
         ob.save()
         context = {"info":"添加成功!"}
     except Exception as err:      
         print(err)
         context = {"info":"添加失败!"}
     return render(request,"admin/info.html",context)

烦请帮忙解答,谢谢!

  • 写回答

2条回答 默认 最新

  • 爱音斯坦牛 全栈领域优质创作者 2022-09-27 11:17
    关注

    request.META["REMOTE_IP"])可以获取ip,至于时间,后台time模块构造,至于你要拿最后一次,这个需求不行。
    我的建议是讲获取ip和构造时间的代码放到中间件中,每次请求都执行,然后存到数据库,此时数据库最后一条数据即是最后访问记录,里面的ip和时间即最后的。
    有帮助的话记得采纳一下哦!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月5日
  • 已采纳回答 9月27日
  • 创建了问题 9月27日

悬赏问题

  • ¥15 数学建模数学建模需要
  • ¥20 Java Sound Api 调用Mixer.getLine偶现Line unsupported错误。
  • ¥15 使用cuda加速opencv运算但是报错AttributeError: module 'cv2.cuda' has no attribute 'getCudaEnabledDeviceCount'
  • ¥15 java输入输出异常
  • ¥15 三子连珠对弈小游戏制作
  • ¥15 C++扑克牌游戏的编程
  • ¥15 有人能看一下我宿舍管理系统的报修功能该怎么改啊?链表那里总是越界
  • ¥15 cs loadimage运行不了,easyx也下了,没有用
  • ¥15 r包runway详细安装教程
  • ¥15 Html中读取Json文件中数据并制作表格