• 临时开关方法

    临时开关方法

    • NoAutoTime()

    如果此方法执行,则此次生成的语句中Created和Updated字段将不自动赋值为当前时间

    • NoCache()

    如果此方法执行,则此次生成的语句则在非缓存模式下执行

    • NoAutoCondition()

    禁用自动根据结构体中的值来生成条件

    1. engine.Where("name = ?", "lunny").Get(&User{Id:1})
    2. // SELECT * FROM user where name='lunny' AND id = 1 LIMIT 1
    3. engine.Where("name = ?", "lunny").NoAutoCondition().Get(&User{Id:1})
    4. // SELECT * FROM user where name='lunny' LIMIT 1
    • UseBool(…string)

    当从一个struct来生成查询条件或更新字段时,xorm会判断struct的field是否为0,””,nil,如果为以上则不当做查询条件或者更新内容。因为bool类型只有true和false两种值,因此默认所有bool类型不会作为查询条件或者更新字段。如果可以使用此方法,如果默认不传参数,则所有的bool字段都将会被使用,如果参数不为空,则参数中指定的为字段名,则这些字段对应的bool值将被使用。

    • NoCascade()

    是否自动关联查询field中的数据,如果struct的field也是一个struct并且映射为某个Id,则可以在查询时自动调用Get方法查询出对应的数据。