Using flutter
I have this model
class Task {
String color;
String env;
String id;
String name;
String description;
bool isBuyIt;
bool isOnBacklog;
}
I am using SwitchListTile
in order to change the boolean value of isBuyIt
and isOnBacklog
SwitchListTile(
activeColor: HexColor(task.color),
title: Text("Do you have it?"),
value: task.isBuyIt,
onChanged: (bool value) {
setState(() {
task.isBuyIt = value;
});
},
secondary: IconButton(
icon: Icon(Icons.shopping_cart),
onPressed: null,
color: HexColor(task.color),
),
)
I am using sqflite: ^1.3.0
and as you know it does not support bool value. I made the table like this way:
Future _onCreate(Database db, int version) async {
await db.execute('''
CREATE TABLE $table (
$columnId TEXT PRIMARY KEY,
$columnName TEXT NOT NULL,
$columnColor TEXT NOT NULL,
$columnEnv TEXT NOT NULL,
$columnDescription TEXT NOT NULL,
$columnisBuyIt INTEGER NOT NULL,
$columnisOnBacklog INTEGER NOT NULL
)
''');
}
But I dont know how to convert Boolean
value into Integer
value. I dont want to change the model fields to Integer
because SwitchListTile
doesnt works with INT
value
I guess Check Constraint
would work.