Django 从数据中获取值而不是unicode表示形式

Django 从数据中获取值而不是unicode表示形式,django,forms,Django,Forms,我想做一些自定义验证: class Products(models.Model): Description = models.CharField(max_length=100) Price = models.DecimalField(max_digits=5, decimal_places=2) def __unicode__(self): return "%s Eur %s" %(self.Description, self.Price) cl

我想做一些自定义验证:

class Products(models.Model):
    Description = models.CharField(max_length=100)
    Price = models.DecimalField(max_digits=5, decimal_places=2)
    def __unicode__(self):
            return "%s Eur %s" %(self.Description, self.Price)

class Orders(models.Model):
    Name = models.CharField(max_length=40)
    Product = models.ForeignKey(Products, default=None, null=True, blank=True)

class OrderForm(ModelForm):
    class Meta:
            model = Orders
    def clean(self):
            cleaned_data = super(OrderForm, self).clean()
            P = cleaned_data.get("Product")

我的问题是p返回产品的unicode表示形式(如:Cableconnector Eur 6.75),但我需要从数据中获取产品id。你知道如何做到这一点吗?

哎哟,这真是太容易了……要得到身份证,只需拨打p.id