dart 如何修复NoSuchMethodError:getter 'length'在null时被调用,插入数据到MySQL

rn0zuynd  于 2023-07-31  发布在  Mysql
关注(0)|答案(1)|浏览(117)

我插入数据到MySQL,但无法保存它面临的问题/错误
第一个月
我试过修改代码,但遇到了同样的问题。我研究了这种从Youtube上插入数据的方法,连同在网站上搜索信息,但操作员可以正常插入,我的机器有问题。
raster image of code and message rendered

class problemcontrollers {
  static const CREATE_URL = "http://192.168.1.6/skc_API/create_problem.php";

  List<problemModel> problemsFromjson(String jsonstring) {
    final data = json.decode(jsonstring);
    return List<problemModel>.from(
        data.map((item) => problemModel.fromJson(item)));
  }

Future<String> addProblem(problemModel problemModel) async {
    final response =
        await http.post(Uri.parse(CREATE_URL), body: problemModel.toJsonAdd());
    if (response.statusCode == 200) {
      return response.body;
    } else {
      return "Error";
    } 
  }
}

class problemModel {
       final id;
       final name_surname;
       final phone_number;
       final address;
       final area;

  problemModel(
       {this.id,
       this.name_surname,
       this.phone_number,
       this.address,
       this.area});

  factory problemModel.fromJson(Map<String, dynamic> json) {
       return problemModel(
       id: json['id'],
       name_surname: json['name_surname'],
       phone_number: json['address'],
       address: json['address'],
       area: json['area'],
    );
  }

  Map<String, dynamic> toJsonAdd() {
     return {
         "name_surname": name_surname,
         "address": address,
         "phone_number": phone_number,
         "area": area,
      };
  }
}

字符串

hk8txs48

hk8txs481#

检查工厂构造函数是否返回有效的problemModel。另外,尝试为problemModel中的变量定义数据类型(即idname_surname等),这些数据类型与您从json文件解析的数据类型相同(即json['id']name_surname: json['name_surname']等)。有时候,当解析json并在变量中设置这些值时,如果数据类型不匹配,它会默默地失败。

相关问题