我尝试使用gorm创建自引用字段:
type Post struct {
ID uint `gorm:"primary_key" json:"id"`
Post *Post `json:"post" xml:"post" sql:"default:null"`
}
db.AutoMigrate(&Post{})
未在DB中创建列post_id
。尝试了几个struct字段名称,没有运气。
处理自我约束关联的正确方法是什么?
谢谢。
答案 0 :(得分:1)
Gorm魔法不在关联(外键)部分,而是在数据部分。
Gorm将根据PostID
执行sql连接以检索相关的Post
行。然后,它会将该数据存储在Post
中的嵌套Post
字段中。
如果您只提供PostID
而没有type Post struct {
ID uint `gorm:"primary_key" json:"id"`
Post *Post `json:"post" xml:"post" sql:"default:null"`
PostID uint `json:"post_id" xml:"post_id"`
}
db.AutoMigrate(&Post{})
Gorm将无所事事,因为没有外键可供使用。
Traceback (most recent call last):
File "C:\Users\john\Desktop\python\E&D.py", line 10, in <module>
pr = RSA.importKey(open('mykey.pem', 'r'))
File "C:\Python27\lib\site-packages\Crypto\PublicKey\RSA.py", line 678, in importKey
if bord(externKey[0])==0x30:
IndexError: string index out of range