我解析了excel并获取列表中的行数据。就像
[empty:'', text:’1', text:’1’, text:’40’, text:'']
[empty:'', text:’2’, text:’5’, text:’23’, text:’●’]
[empty:'', text:’3’, text:’9’, text:’52’, text:'']
所以列表输出是好的。现在我想把这个列表放到模型(用户)。 models.py中的用户模型是
class User(models.Model):
user_id = models.CharField(max_length=200)
name_id = models.CharField(max_length=200)
age = models.CharField(max_length=200)
man = models.BooleanField()
man = models.BooleanField()
的最后一个代码意味着男人或女人,如果在excel中'●',则意味着用户是男人而且真正想要放在man变量中。
现在views.py是
#coding:utf-8
from django.shortcuts import render
import xlrd
book = xlrd.open_workbook('../data/data.xlsx')
sheet = book.sheet_by_index(1)
for row_index in range(sheet.nrows):
row = sheet.row(row_index)
print(row)
# I had to add codes connect controller & model
我不知道如何将这些列表数据发送到模型和模型有这些数据。严格来说,我想把这些列表数据写入sqlite3.Is这段代码
import app.models
for x in row:
User.user_id = row[1]
User.name_id = row[2]
User.age = row[3]
User.man = row[4]
写模型的好方法?(或者是错误的方式?) 还有其他更有效的方法吗?
答案 0 :(得分:0)
假设你有整个行和列的东西,这应该工作:
for row in rows:
# if the man column is not empty, we assume it's a male:
is_man = row[4] != ""
user = User(user_id=row[1], name_id=row[2], age=row[3], man=is_man)
user.save()