就我的一生而言,我找不到解决这个问题的方法,我真的不知道内联线到底做错了什么。你知道吗
我使用的是django 1.8和django嵌套内联0.3.4。你知道吗
这是报告的内容型号.py文件:
import datetime
from django.db import models
from django.db.models.fields import CharField, TextField, IntegerField
from django.utils import timezone
# lectura de sensor, no incluye datos, solo fecha y datos apuntan aquí
# también apunta a la pieza y el sensor asignado
class lectura(models.Model):
lectura_nom = models.CharField(max_length = 20)
sensor_asign = models.ForeignKey('sensor_asignado')
pieza = models.ForeignKey('pieza')
verificacion = models.BooleanField()
fecha_hora = models.DateTimeField()
def __str__(self):
return self.lectura_nom
def lectura_de_hoy(self):
return self.fecha_hora >= timezone.now() - datetime.timedelta(days=1)
# pieza asignada al sensor, cambia de acuerdo a hroario de produccion
class pieza(models.Model):
pieza_nom = models.CharField(max_length = 20)
paquete =models.ForeignKey('paquete')
ultima = models.BooleanField()
no_de_seq = models.IntegerField()
description= models.TextField()
def __str__(self):
return self.pieza_nom
# paquetes incluyen puras piezas únicas al paquete
class paquete(models.Model):
paquete_nom = models.CharField(max_length = 20)
no_de_piezas = models.IntegerField()
no_de_medibles = models.IntegerField()
def __str__(self):
return self.paquete_nom
#lugar donde se encuentra el rack, importante para permisos de usuario
class area(models.Model):
area_nom = models.CharField(max_length = 20)
description = models.TextField()
def __str__(self):
return self.area_nom
# rack del cual fue sacada la pieza
class linea(models.Model):
linea_nom = models.CharField(max_length = 20)
area = models.ForeignKey('area')
description = models.TextField()
def __str__(self):
return self.linea_nom
# sensor del cual se sacó la lectura
class sensor_asignado(models.Model):
sensor_nom = models.CharField(max_length = 20)
linea = models.ForeignKey('linea')
sensor_tipo = models.ForeignKey('tipo_de_sensor')
def __str__(self):
return self.sensor_nom
# sensor puede incluir varias configuraciones de envio de datos
class tipo_de_sensor(models.Model):
tipo_de_sen_nom = models.CharField(max_length = 20)
descripcion=models.TextField()
def __str__(self):
return self.tipo_de_sen_nom
# diferentes datos para el sensor de tipo especificado anteriormente
# cada dato apunta hacia una lectura
class salidas_de_sensor(models.Model):
salida_nom = CharField(max_length = 20)
descripcion = models.TextField()
def __str__(self):
return self.salida_nom
class datos_o(models.Model):
dato_no = IntegerField(primary_key = True)
salida_de_sensor = models.ForeignKey('salidas_de_sensor')
lectura = models.ForeignKey('lectura')
def __str__(self):
r_string = str(self.dato_no)
return r_string
# advertencias, apunta a un tipo y una lectura
class adv(models.Model):
adv_no = IntegerField(primary_key=True)
lectura = models.ForeignKey('lectura')
adv_tipo = models.ForeignKey('adv_tipo')
def __str__(self):
adv_string = str(self.adv_no)
return adv_string
# diferentes tipo de advertencias posibles
class adv_tipo(models.Model):
adv_tip = CharField(max_length = 20)
descrip_adv = TextField()
def __str__(self):
return self.adv_tip
这是我的书的内容管理员.py文件:
from django.contrib import admin
from nested_inline.admin import NestedStackedInline, NestedModelAdmin
from mainscreen.models import *
class AreaInline(NestedStackedInline):
model = area
extra = 1
fk_name = area
class LineaInLine(NestedStackedInline):
model = linea
extra = 1
fk_name = linea
inlines = [AreaInline]
class SensorInLine(NestedModelAdmin):
model = sensor_asignado
inlines = [LineaInLine]
admin.site.register(lectura)
admin.site.register(sensor_asignado, SensorInLine)
admin.site.register(salidas_de_sensor)
admin.site.register(pieza)
admin.site.register(paquete)
admin.site.register(area)
admin.site.register(linea)
admin.site.register(tipo_de_sensor)
admin.site.register(adv)
admin.site.register(adv_tipo)
admin.site.register(datos_o)
我得到的错误是:
Performing system checks...
SystemCheckError: System check identified some issues:
ERRORS:
<class 'mainscreen.admin.LineaInLine'>: (admin.E202) 'mainscreen.linea' has no field named '<class 'mainscreen.models.linea'>'.
System check identified 1 issue (0 silenced).
不管怎样,如果有人能找到解决这个问题的方法,我会非常感激的。你知道吗
祝你今天愉快。你知道吗
编辑:
好吧,现在我完全有另一个问题了,我相信这更像是一个设计问题。你知道吗
我希望在管理中显示信息的方式是:
when a new Sensor Asignado is created, have the option to choose from a drop downn menu in the following order of hierarchy:
Area
Linea (filtered by Area chosen)
Sensor (Filtered by Linea chosen)
再说一次,为了把这件事做好,我已经伤了自己一段时间了,任何帮助都是非常感谢的。你知道吗
谢谢,祝你今天愉快。你知道吗
尝试为
fk_name
使用字符串:另外,我建议您使用Django约定,将模型命名为
SensorAsignado
和Linea
,而不是sensor_asignado
和linea
。它将使其他Django用户更容易理解您的代码。你知道吗相关问题 更多 >
编程相关推荐