2017-07-24 64 views
1

我需要定義與預定義的「用戶」表格相關的新表格。 請幫我寫這個 entity diagram預定義表格USER與我自己的表格之間的JHipster關係

正確JDL碼我試着寫文件 「mytable.jh」 和進口:> jhipster進口JDL mytable.jh

entity MyTable{ 
    userid Long, //relation to table jhi_user 
} 

relationship OneToMany { 
    User{id} to Mytable{userid} 
} 

,並得到

{ name: 'IllegalAssociationException', 
    message: 'Relationships from User entity is not supported in the declaration between User and Mytable.', 
    prototype: 
    Error 

回答

3

基本上你不能在jhi_user表中添加新的字段,而且JDL不會讓你做任何會導致這種情況發生的事情。

可以用戶對象的引用添加到其他實體的東西,如

relationship ManyToOne { 
    Mytable{userid} to User 
} 

注意那裏,我{anything}User之後 - 這意味着User不知道它是哪個Mytable有關聯。如果要從Mytable的實例「備份」到User的實例,則必須從Mytable一側進行搜索;用戶將不會有任何與Mytable實例相關的字段或獲取者/設置者。

另請注意,userid字段不一定嚴格用於關聯兩個實體。 JDL和代碼生成實際上負責爲您創建關係和主鍵/外鍵。所以

entity Car { 
} 

relationship ManyToOne { 
    Car{user} to User 
} 

意味着每一個User,有很多Car S,或者說它的另一種方式是每個Car有一個user其字段名Car對象內將user。所以你必須Car.getUser()法等

當您在entity塊中定義一個字段,你定義該實體的屬性,的關係 - 該屬性是獨立於其他所有對象你的模型。

雖然你仍然不會有User.getCars()方法。這對於當前的jHipster設計來說是不可能的。

0

我認爲這在在jhipster文檔可能會幫助你,我從來沒有看過它,但一個隊友做了這個在我的項目,我正在努力工作。希望這可以幫助。你總是可以詢問Paul-Etienne瞭解更多信息,他會很樂意幫忙的。

相關問題