我试图将会话生成的公司ID分配给属于该公司的新产品,但我一直收到此错误,而且我不确定它的含义。
非常感谢任何帮助
Models.py
class Condominios(models.Model):
idCondominio = models.AutoField(primary_key=True, null=False, max_length=15)
idUser = models.OneToOneField(User)
Nombre = models.CharField(max_length=200)
Direccion = models.CharField(max_length=100)
Colonia = models.CharField(max_length=100)
CP = models.CharField(max_length=100)
Municipio = models.CharField(max_length=100)
Estado = models.CharField(max_length=100)
Pais = models.CharField(max_length=100)
Tamanom2 = models.CharField(max_length=20)
Frentem2 = models.CharField(max_length=20)
Fondom2 = models.CharField(max_length=20)
def __unicode__(self):
return unicode(self.Nombre)
views.py
@login_required(login_url="/inicioc/")
def nuevapropiedad(request):
if request.method == "POST":
form = NuevaPropiedad(request.POST)
if form.is_valid():
propiedad = PropiedadesCond(idUser=request.user, Condominio=request.session["idCondominio"], Numero=request.POST.get("Numero", ""), Nombre=request.POST.get("Nombre", ""), Tamanom2=request.POST.get("Tamanom2", ""), Ocupante=request.POST.get("Ocupante", ""), Propietario=request.POST.get("Propietario", ""), Telefono=request.POST.get("Telefono", ""), Celular=request.POST.get("Celular", ""), Correo=request.POST.get("Correo", ""))
form.save()
return render(request, "immovelc/propiedades.html")
else:
return render(request, "immovelc/nuevapropiedad.html",
{"form": form})
return render(request, "immovelc/nuevapropiedad.html")
forms.py
class NuevaPropiedad(ModelForm):
class Meta:
model = PropiedadesCond
fields = ["Numero", "Nombre", "Tamanom2", "Ocupante", "Propietario", "Telefono", "Celular", "Correo"]
谢谢!
答案 0 :(得分:0)
propiedad =
PropiedadesCond(
idUser=request.user,
Condominio=request.session["idCondominio"], # <------- problem
Numero=request.POST.get("Numero", ""), Nombre=request.POST.get("Nombre", ""),
Tamanom2=request.POST.get("Tamanom2", ""),
Ocupante=request.POST.get("Ocupante", ""),
Propietario=request.POST.get("Propietario", ""),
Telefono=request.POST.get("Telefono", ""),
Celular=request.POST.get("Celular", ""),
Correo=request.POST.get("Correo", ""))
如果没有看到你的Propiedades模型,我会冒险猜测你需要 在构造Propiedades对象之前首先获取或实例化Condominio对象。 构造函数将尝试将您从会话中获得的unicode字符串u'1'分配给Condominio对象,这会导致您描述的错误。