Lift的映射器中的外键约束

时间:2011-11-21 11:31:17

标签: database scala lift mapper

我在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"  
  }  
}

但是我的表没有为数据库中的foreignKey键创建约束。

1 个答案:

答案 0 :(得分:7)

提升,like Rails默认情况下不会创建外键约束。如果要启用它们,可以通过MapperRules执行此操作。在进行其他数据库初始化之前,请将它放在Boot的某个地方。

MapperRules.createForeignKeys_? = (_) => true

var createForeignKeys_?ConnectionIdentifier => Boolean类型的函数。我想这允许您控制每个连接的外键创建,但大多数应用程序只有一个数据库连接。