Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django:如何从excel中的用户表授予用户帐户_Python_Django - Fatal编程技术网

Python Django:如何从excel中的用户表授予用户帐户

Python Django:如何从excel中的用户表授予用户帐户,python,django,Python,Django,我想用存储在Excel电子表格中的学生代码用户名和密码创建帐户,我该怎么办?首先,将Excel数据导出为CSV文件。然后,您可以使用库轻松地遍历CSV文件,并将数据插入Django 例如,假设CSV文件中的字段如下所示: name, username, password 然后,您可以使用此代码逐行读取CSV文件并将用户添加到数据库: def bulk\u add\u用户(路径): 打开('path_to_csv_file',mode='r')作为csv_文件: reader=csv.reade

我想用存储在Excel电子表格中的学生代码用户名和密码创建帐户,我该怎么办?

首先,将Excel数据导出为CSV文件。然后,您可以使用库轻松地遍历CSV文件,并将数据插入Django

例如,假设CSV文件中的字段如下所示:

name, username, password
然后,您可以使用此代码逐行读取CSV文件并将用户添加到数据库:

def bulk\u add\u用户(路径):
打开('path_to_csv_file',mode='r')作为csv_文件:
reader=csv.reader(csv\u文件)
_=下一个(读卡器)
对于行内读取器:
名称=行[0]
用户名=第[1]行
密码=第[2]行
如果没有(姓名和地址)
用户名和
密码):
raise VALUERROR(f'Invalid User data!')
user=user(name=name,username=username)
user.set_密码(password)
user.save()
编辑:


如果您正在使用django模型(或扩展它),您应该使用
user。设置密码(“原始密码”)
,以便在保存之前进行密码加密。

您可以使用用户名和密码创建
user
对象。例如,通过处理csv文件,其中第一列包含
用户名
,第二列包含原始
密码

from csv import reader
from django.contrib.auth.models import User

with open('users.csv', 'r') as csv_file:
    csvf = reader(csv_file)
    data = []
    for username, password, *__ in csvf:
        user = User(username=username)
        user.set_password(password)
        data.append(user)
    User.objects.bulk_create(data)
来自csv导入读取器的

从django.contrib.auth.models导入用户
打开('users.csv','r')作为csv\u文件:
csvf=读卡器(csv_文件)
数据=[]
对于csvf中的用户名、密码、*\uuuuuu:
用户=用户(用户名=用户名)
user.set_密码(password)
data.append(用户)
User.objects.bulk\u创建(数据)

在这里使用很重要,因为这将在数据库中散列密码。

请稍候,您存储了原始密码?很抱歉键入我的问题,我想使用Excel电子表格中存储的学生代码用户名和密码创建帐户,但密码将像往常一样加密。我尝试将csv表添加到数据库中,但密码很粗糙,无法登录。我根据您的登录问题编辑了答案,检查一下。使用说明或者你可以创建一个来运行它(如果你经常使用此代码)。我刚刚尝试过,它工作得非常好,非常感谢Pedram:3是的,解决方案与Pedram非常相似,它会工作的,谢谢!