serde_json到json在柴油数据库对象中打印附加字符串\ r和\ n

问题描述

https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=dd192960ff73f3cc1f2d9ac8525a5531

use serde_json::json; // 1.0.57
fn main() {

let users = vec![Users {
  id : 10,username : "test".to_string(),password : "pass".to_string()
  }];
 for user in &users {
     println!("I print  id:{},password:{},username:{} ",user.id,user.password,user.username);
 }
 println!("json_serde prints {}",json!(&users));
 
 let serialized = serde_json::to_string(&users).unwrap();
 println!("Different serde: {}",serialized);
}
#[derive(Serialize,Deserialize)]
pub struct Users {
 pub id: i32,pub username: String,pub password: String,}

它工作完美,但是在我的服务器上我知道了

I print  id:4,password:test,username:test
json_serde prints [{"id":4,"password":"test\r\n","username":"test\r"}]

唯一的区别是我从数据库获取数据

柴油查询

    let users = users
    .filter(id.eq(p_id))
    .limit(10)
    .load::<Users>(&connection)
    .expect("Error loading posts"),

model.rs中的实际用户

    #[derive(Queryable)]
    #[derive(Serialize,Deserialize)]
    pub struct Users {
        pub id: i32,}

shema.rs

 table! {
        users (id) {
            id -> Int4,username -> Varchar,password -> Varchar,}
    }

解决方法

我忘记整理输入内容,所以serde_json是正确的

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...