【问题标题】:Routing default CRUD interface for composite keys in Play FramworkPlay Framework中复合键的路由默认CRUD接口
【发布时间】:2012-09-15 13:11:11
【问题描述】:

我正在尝试为只有复合键的实体创建一条成功的路由,以便我可以导航到默认 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 的“编辑”页面,而不必创建一个整数类型的主键?

谢谢!

【问题讨论】:

    标签: playframework playframework-1.x composite-primary-key


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 2013-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-23
      • 1970-01-01
      相关资源
      最近更新 更多