Python Can';无法找到将csv导入django模型的有效解决方案
这太乱了,请容忍我 作为将大得多的文件导入Django模型的前奏,我想首先使用csv导入来创建大文件中的模型所依赖的外键字段。此csv正好是两行,标题和fk模型的一个实例的数据 这似乎很简单,而我在这里和网上其他地方读到的所有帖子都让它看起来非常简单。但对我来说不是 以下是我尝试过的:Python Can';无法找到将csv导入django模型的有效解决方案,python,django,csv,Python,Django,Csv,这太乱了,请容忍我 作为将大得多的文件导入Django模型的前奏,我想首先使用csv导入来创建大文件中的模型所依赖的外键字段。此csv正好是两行,标题和fk模型的一个实例的数据 这似乎很简单,而我在这里和网上其他地方读到的所有帖子都让它看起来非常简单。但对我来说不是 以下是我尝试过的: 我写了自己的剧本,基于 然后我发现我必须使用Django.setup()。我从最初的博文中得到这个,但没有提到这一点。它可能是在添加此要求之前编写的。无论如何,我现在必须使用Django.setup,因为这是一个
(加农炮)malikarumi@Tetuoan2:~/Projects/cannon$python./load\u data\u 2.py
回溯(最近一次呼叫最后一次):
文件“/load_data_2.py”,第3行,在
进口Django
ImportError:没有名为Django的模块
ImportError:没有名为essell的模块
回溯(最近一次呼叫最后一次):
文件“/load_data_2.py”,第8行,在
django.setup()
名称错误:未定义名称“django”
文件“/home/malikarumi/Projects/cannon/jamf/essell/management/commands/my_loaddata1.py”,第21行,在handle judiction.address=行[1]
索引器:列表索引超出范围
因为我只有两行,一个实例的标题和数据,所以我突然想到,可能我需要的是列,而不是行。但这是原剧本的风格。这让我想到了csv上的官方文档,在那里我很沮丧地看到没有按索引号使用行的例子
沮丧的是,我想知道一个定制的管理命令
(加农炮)malikarumi@Tetuoan2:~/Projects/cannon/jamf$python manage.py startapp csvimport
CommandError:'csvimport'与现有Python模块的名称冲突,不能用作应用程序名称。请改名。
(加农炮)malikarumi@Tetuoan2:~/Projects/cannon/jamf$ls
essell jamf manage.py Procfile README.md requirements.txt runtime.txt
注意:即使在我重命名,然后删除手动创建的csvimport文件夹之后,我仍然会遇到这个错误。我尝试将其重命名为csvimport2,但这将如何影响程序的其他部分?我不知道这个问题的答案的一个原因是,现在我有了这个csvimport2应用程序,我应该在models.py中添加什么?
我应该运行迁移并为csvimport2创建表吗?显然,文档中确实说要“运行syncdb”。但我“没有要应用的迁移”,即使在已安装的应用程序中有csvimport2
最后,我向你求助 我找到了答案:csvkit 它完成了我所需要的一切(将csv转换为json),而且它有很好的文档记录,并且目前得到了维护 然后,我将其与Django fixtures和loaddata命令相结合,我很高兴地重新投入工作,大大降低了压力水平
仔细查看Django页面上的json示例,然后按照该示例进行操作,否则会出现错误,但它确实有效,您还能要求什么呢?我找到了答案:csvkit 它完成了我所需要的一切(将csv转换为json),而且它有很好的文档记录,并且目前得到了维护 然后,我将其与Django fixtures和loaddata命令相结合,我很高兴地重新投入工作,大大降低了压力水平
仔细查看Django页面上的json示例,并遵循该示例,否则会出现错误,但它确实有效,你还能要求什么呢?你使用的是
django>=1.8
,因为错误在于迁移,所以首先做django manage.py makemigrations
,然后点migrate
我想你指的是python manage.py,而不是django manage.py@少女拉姆纳尼。以下是我尝试使用圆点时得到的结果:加农炮)malikarumi@Tetuoan2:~/Projects/cannon/jamf$python manage.py./migrate未知命令:'./migrate'键入'manage.py help'以了解用法。(加农炮)malikarumi@Tetuoan2:~/Projects/cannon/jamf$python manage.py.migrate未知命令:'.migrate'键入'manage.py help'了解用法。是的,对不起!它的python
不是django
您正在使用django>=1.8
,因为错误在于迁移,所以首先执行django manage.py makemigrations
和