![](/img/trans.png)
[英]DBIx::Class::Schema::Loader ResultSource base class
[英]DBIx::Class::Schema::Loader customization
我們有一個MyISAM數據庫(不要問我為什么不切換到InnoDB,它不受我控制)。
現在,我希望DBIx::Class::Schema::Loader
為*ID
列創建關系,並添加s
以獲取表名。 例如, Order.SeanceID
應將表Order
與表Seances
相關Seances
。
DBIx::Class::Schema::Loader
可以被黑客入侵嗎? 還是編寫自己的Loader更好?
不用擔心“黑客” DBIx :: Class :: Schema :: Loader來處理這個問題。 只需生成類,然后手動添加關系即可。
使用DBIx :: Class :: Schema :: Loader生成的每個類的底部都將包含如下所示的文本:
# Created by DBIx::Class::Schema::Loader v0.07043 @ 2018-07-09 09:56:55
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:6//4n3Crnz9U/q6GZ0Fwtg
# You can replace this text with custom code or comments, and it will be preserved on regeneration
正如最后一條評論所述,如果重新生成該類,則在此文本下方的文件中插入的所有內容都將保留。 因此,您可以安全地手動將關系信息添加到文件的此部分,並知道下次您重新生成類時該信息仍然存在。
別忘了,您將需要添加關系的兩面-例如,父表中的has_many
關系和關聯子表中的倒數belongs_to
關系到關系。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.