0

我正在尝试为只有复合键的实体创建一条成功的路由,以便我可以导航到默认 CRUD 模块的“编辑”界面。

现在,我已成功检索并显示数据库中所有 club_admin 的列表,但是当我尝试导航到 club_admin 的个人编辑页面时,我收到“无路线”错误。

我的数据库中的表是:

create table club_admin  (
    club_id int not null,
    user_username varchar(25) not null,
    primary key (club_id,user_username),
    constraint fk_club_admin_club_id foreign key (club_id) references club(club_id), 
    constraint fk_club_admin_user_username foreign key (user_username) references user(user_username)
);

club_admin 类的代码是:

package models;

...

@Entity
@Table(name="club_admin")
public class ClubAdmin extends GenericModel
{

        @Id 
        @ManyToOne
        @JoinColumn(name="club_id", referencedColumnName="club_id")
        public Club club;

        @Id 
        @ManyToOne
        @JoinColumn(name="user_username", referencedColumnName="user_username")
        public User user;

        public ClubAdmin(Club club, User user)
        {
                this.club=club;
                this.user=user; 
        }

        ...
}

我的猜测是表/实体没有用于路由的默认 ID,因此失败。所以我的问题是如何创建一个路由,它使用复合键导航到 club_admin 的“编辑”页面,而不必创建一个整数类型的主键?

谢谢!

4

1 回答 1

0

我发现多对多关系由Set<class>. 我不应该创建多对多类,而是应该根据我的需要在俱乐部或签证节上创建一组成员(代表管理员)变量。使用此方法,会自动创建多对多关系。此外,无需编辑我的路线。

于 2012-10-03T13:07:50.113 回答