• L
    Change sqlite3 boolean serialization to use 1 and 0 · 52e050ed
    Lisa Ugray 提交于
    Abstract boolean serialization has been using 't' and 'f', with MySQL
    overriding that to use 1 and 0.
    
    This has the advantage that SQLite natively recognizes 1 and 0 as true
    and false, but does not natively recognize 't' and 'f'.
    
    This change in serialization requires a migration of stored boolean data
    for SQLite databases, so it's implemented behind a configuration flag
    whose default false value is deprecated. The flag itself can be
    deprecated in a future version of Rails.  While loaded models will give
    the correct result for boolean columns without migrating old data,
    where() clauses will interact incorrectly with old data.
    
    While working in this area, also change the abstract adapter to use
    `"TRUE"` and `"FALSE"` as quoted values and `true` and `false` for
    unquoted.  These are supported by PostreSQL, and MySQL remains
    overriden.
    52e050ed
railtie.rb 7.0 KB