Skip to main content
 首页 » 编程设计

python之如何在创建 Django 模型时填充表格

2025年05月04日20zhengyun_ustc

我有一个城市列表(简单的 cvs 文件),我想在创建城市模型时填充 citeis 表。 类说明:

class City(models.Model): 
    city = modeld.CharField('city_name', max_length=50) 
 
    class Meta: 
        berbuse_name =.... 
        ........... 
 
    def __unicode__(self): 
        return self.city 

现在,我正在寻找的是如何在创建模型(数据库表)时只执行一次。

我想在这里做,因为这对我来说听起来很合乎逻辑(比如在 MS-sql 和其他语言中构建 sql 脚本)

编辑:好的,我想我问错了....也许是这样的:我如何创建一个 python 函数来获取 cvs 文件并将其转换为 json(同样,在模型本身中,同时它正在构建),我应该这样做吗???

有人可以帮我解决这个问题吗?

请您参考如下方法:

我们通常会做这样的事情。

import csv 
from my_django_app.forms import CityForm 
with open( "my file", "rb" ) as source: 
    rdr = csv.DictReader( source ) 
    for row in rdr: 
        form= CityForm( **row ) 
        if form.is_valid():  
            form.save() 
        else: 
            print form.errors 

这会验证并加载数据。

加载数据后,您可以使用 django-admin dumpdata 从加载的模型中保留一个 JSON fixture。