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 関係に固執したいと思います。
この問題を解決するにはどうすればよいですか? 私は何かを逃しましたか?