问题描述
我正在尝试使用下一条命令用灯具填充我的数据库:
python。\ manage.py loaddata。\ rules \ fixtures \ rules.json
AttributeError:安装固定装置'C:\ Users \Ángel时出现问题- Trabajo \ Documents \ AVC。\ rules \ fixtures \ rules.json':“ nonetype”对象 没有属性“ id”
这是我的模特
class Rule(LogsMixin,models.Model):
"""Definición de modelo para Reglas"""
FIELDS = [
('user_name','Nombre de usuario'),('user_code','Codigo de usuario')
]
string = models.CharField("Cadena de referencia",max_length=100,null=False,default="",blank=False)
profile = models.ForeignKey(Profile,default=None,on_delete=models.DO_nothing)
license = models.ForeignKey(License,on_delete=models.DO_nothing)
field = models.CharField("Campo objetivo",max_length=50,default='nombre_usuario',choices=FIELDS)
include = models.BooleanField("Incluye",default=True)
order = models.IntegerField("Orden",null=True,default=None)
uppercase_sensitive = models.BooleanField("Sensible a las mayúsculas",default=False)
dateadded = models.DateTimeField("Fecha de inserción",default=datetime.datetime.Now)
这是我的json:
[
{
"model":"rules.rule","pk":null,"fields":{
"string": "DINAMITZADORA","profile": "1","license": "1","field": "user_name","include": "1","order": "0","uppercase_sensitive": "0"
}
},{
"model":"rules.rule","fields":{
"string": "adm","fields":{
"string": "admin","fields":{
"string": "alum",]
我尝试在我的settings.py中声明FIXTURE_Dirs,但是没有用。 我试图在json中只允许一个元素(它有80个),以防万一它具有某种价值,但两者都不起作用。
我完全迷路了,你能帮我吗?
谢谢你们:)
解决方法
您自己输入了这个json吗?
我该怎么做,我从一个干净的数据库开始,然后通过Web界面添加一些数据,然后执行以下命令:
python .\manage.py dumpdata your_appname --indent 4 > .\rules\fixtures\rules.json
因此,稍后当您的数据库为空时,可以使用命令再次加载数据:
python .\manage.py loaddata .\rules\fixtures\rules.json
如果您在loaddata
之后指定路径,则FIXTURE_DIRS
将被忽略,因此您不应在settings.py
文件中设置该路径。
保存灯具的最佳做法是在your_app/fixtures/somename.json
位置,但是我认为是这种情况,因为我认为您的应用程序称为规则?
如果这样做,django会知道在哪里寻找,您可以键入而不是提供整个路径。
python .\manage.py loaddata some_name.json