Sqflite в моделях Scoped - PullRequest
0 голосов
/ 08 марта 2019

Я использую плагин Scoped models в своем проекте и не знаю, как сохранить и получить, если таблица не пуста из db Sqflite. пожалуйста, помогите мне.

Вот код в базе данных

addUser(UserModel user) async{
    final db = await database;
    var table = await db.rawQuery("SELECT MAX(id)+1 as id FROM User");
    int id = table.first["id"];
    //insert to the table using the new id
    var raw = await db.rawInsert(
        "INSERT Into Client (id,first_name,last_name,gender,username,email,is_email_verified,birthdate,phone,is_activated)"
            " VALUES (?,?,?,?,?,?,?,?,?,?)",
        [id, user.firstName, user.lastName, user.gender, user.email, user.isEmailVerified, user.birthdate, user.phone, user.isActivated]);
    return raw;
  }

и в модели Scoped

UserModel userModel = UserModel(
  firstName: profileData.firstName,
  lastName: profileData.lastName,
  gender: profileData.gender,
  username: profileData.username,
  email: profileData.email,
  isEmailVerified: profileData.isEmailVerified,
  birthdate: profileData.birthDate,
  phone: profileData.phone,
  isActivated: profileData.isActivated,
);

print('usermodel ${userModel.toJson()}');
// here to save? 

и класс виджетов,

return Scaffold(
          appBar: AppBar(

            title: Center(
              child: ScopedModelDescendant<MainModel>(
                builder: (BuildContext context, Widget child, MainModel model){
                  return Column(
                    mainAxisAlignment: MainAxisAlignment.center,
                    crossAxisAlignment: CrossAxisAlignment.center,
                    children: <Widget>[
                      model.isLoading ? Text('name surname', style: TextStyle(color: Colors.white, fontSize: 18, fontWeight: FontWeight.w500)) : Text('${model.profile.firstName} ${model.profile.lastName}', style: TextStyle(color: Colors.white,  fontSize: 18, fontWeight: FontWeight.w500),),
                      Text('Баланс \$0', style: TextStyle(color: Colors.white, fontSize: 15, fontWeight: FontWeight.w300),),
                    ],
                  );
                },
              ),
            ),
            elevation: 0,

Я должен сохранить в Scoped Model или в классе Widget? и я должен начать в классе виджетов и закрыть?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...