3

ScalaでMapperを使用してテーブルを作成しました。

class Stage extends Mapper[Stage]
{                   
  def getSingleton = Stage             
  object controlId extends MappedLongForeignKey (this,Control) {  
    override def dbNotNull_? = true  
    override def dbColumnName = "control_id"  
  }  
}

しかし、私のテーブルはデータベースの外部キーの制約を作成しません。

4

1 に答える 1

7

Railsと同様に、 Liftはデフォルトでは外部キー制約を作成しません。それらを有効にしたい場合は、を介して行うことができますMapperRulesBoot他のデータベース初期化を行う前に、これをどこかに置いてください。

MapperRules.createForeignKeys_? = (_) => true

varcreateForeignKeys_?はタイプの関数ですConnectionIdentifier => Boolean。これにより、接続ごとの外部キーの作成を制御できると思いますが、ほとんどのアプリケーションには単一のデータベース接続しかありません。

于 2011-11-21T14:54:33.787 に答える