0

Play Framework 2.1 で JoinTable との一方向の OneToMany リレーションを作成しようとしました。ただし、フレームワークは 'JoinTable': "transformation_input_files" を生成していません。奇妙な部分は、関係を ManyToMany に変更すると、テーブルが生成されることです。コードは次のとおりです。

つまり、複数の S3Files を含む Transformation クラスについてです。変換ファイルは次のとおりです。

@Entity
@Table(name = "transformations")
public class Transformation extends Model {

    @Id
    public Long id;

    /*...*/

    @OneToMany(cascade = CascadeType.PERSIST)
    @JoinTable(
        name="transformation_input_files",
        joinColumns = @JoinColumn( name="transformation_id"),
        inverseJoinColumns = @JoinColumn( name="input_file_id")
    )
    public List<S3File> inputFiles;
}

S3ファイルは次のとおりです。

@Entity
@Table(name="s3files")
public class S3File extends Model {

    @Id
    public Long id;

    /*...*/
}

S3Files はより多くのモデルで使用されるため、双方向の関係になることはできません。@ManyToMany で @OneToMany を変更すると、結合テーブルが生成されますが、@OneToMany 関係に固執したいと思います。

この問題を解決するにはどうすればよいですか? 私は何かを逃しましたか?

4

1 に答える 1