在django中定义了两个表。2.国家当我试图从状态表中打印country_id时,它的检索像"状态对象(1)"我只期望数字1 2 3
# location lookup
class Country(models.Model):
country_id=models.AutoField(auto_created=True,primary_key=True)
country_name=models.CharField(max_length=50)
country_code=models.CharField(max_length=50,null=True,blank=True)
# state lookup
class State(models.Model):
state_id=models.AutoField(auto_created=True,primary_key=True)
state_name=models.CharField(max_length=50)
country_id=models.ForeignKey(Country, on_delete=models.CASCADE,db_column='country_id')
甚至我也是第一次犯同样的错误。
您可能正在尝试
State.country_id
并打印出来。相反,你必须输入
State.country_id.country_id
当你简单地使用第一个选项时,输出是对象State本身,而不是country_id,所以你必须在对象country_id中说country_id的值,这就是为什么你必须在那里使用点。
所以我们大多数人做的是在类State中我们将把字段名称为country代替country_id因为我们可以使用 来声明"Get me the instance country的id">State.country.country_id