python - 我应该如何连接字典的 user_id 和模型的 user_id?

标签 python django

我想解析Excel并制作字典并连接具有相同字典user_id的模型(用户)。 现在字典是

dict_data = {'user_id': 1,'nationarity': America, 'dormitory':'A', 'group': 3}

views.py 中的模型是

user = User(user_id=rows[1],name_id=rows[2],age=rows[3],employee=rows[4])

如果我想将字典的数据添加到模型中,我应该这样写

for data in dict_data:
    User(**data)

但是我应该如何连接字典的user_id和models的呢?我应该写什么呢?

现在我写的是

#coding:utf-8
from django.shortcuts import render
import xlrd
from app.models import User
book3 = xlrd.open_workbook('./data/XXX.xlsx')
sheet3 = book3.sheet_by_index(0)
headers = sheet3.row_values(0)

large_item = None
dicts = {}
for row_index in range(sheet3.nrows):
    rows3 = sheet3.row_values(row_index)
    large_item = rows3[1] or large_item

    # Create dict with headers and row values
    row_data = {}
    for idx_col, value in enumerate(rows3):
        header_value = headers[idx_col]
        # Avoid to add empty column. A column in your example
        if header_value:
            row_data[headers[idx_col]] = value
            # Add row_data to your data_dict with
    dicts[row_index] = row_data
    for data in dicts:
        user1 = User.objects.filer(user_id = data['user_id']).exists()
        if user1:
            user1.__dict__.update(**dicts)
            user1.save()

当我运行这段代码时,

AttributeError: 'Manager' object has no attribute 'filer'
user1 = User.objects.filer(user_id = data['user_id']).exists()

我应该如何解决这个问题?

最佳答案

for data in dict_datas:        
    user = User.object.filter(user_id = data['user_id']).exists()
    if user:
       user.__dict__.update(**dict_data)
       user.save() 

关于python - 我应该如何连接字典的 user_id 和模型的 user_id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46071906/

相关文章:

python - 按计数聚合,将所有列保留在 Pandas 中

django - 使用模板变量创建名为 URL 的 Django?

python - 返回这样的反向列表时会发生什么

python - 父类的引用 sibling

Azure 上的 Django 不加载静态文件

django - 在Wagtail(或Django)中获取指定类型的子页面

python - 您可以更改 Django Admin 应用程序中的字段标签吗?

python - 它是如何工作的,Django INSTALLED_APPS 的命名约定?

python - Pandas 分组 - 值占基于另一列的分组总数的百分比

python - opencv imutils 调整视频流大小