简体   繁体   English

我如何使用 adonis /node.js 中的模型实例创建 create() 方法?

[英]How i can make a create() method using a instance of my model in adonis /node.js?

I'm trying to make a insert using Lucid Models.我正在尝试使用 Lucid 模型进行插入。

So, first i define my model in a const :所以,首先我在const定义我的模型:

const ClasseLivroHistorico = use('App/Models/ClassBookHistoric')

This is my function that needs to create a new record:这是我需要创建新记录的函数:

async cadastraPrimeiroHistorico(classeId, bookUnitId, bookId){
    const primeiroClasseLivroHistorico = new ClasseLivroHistorico()
    primeiroClasseLivroHistorico.class_id = classeId;
    primeiroClasseLivroHistorico.book_unit_id = bookUnitId
    primeiroClasseLivroHistorico.book_id = bookId
    primeiroClasseLivroHistorico.status = false
    primeiroClasseLivroHistorico.created_at = new Date()
    primeiroClasseLivroHistorico.book_unit_sequence = 1
    await ClasseLivroHistorico.create(primeiroClasseLivroHistorico)

}

But i'm getting:但我得到:

insert into "xxx" ("$attributes", "$frozen", "$hidden", "$originalAttributes", "$parent", "$persisted", "$relations", "$sideLoaded", "$visible", " setters ", "created_at", "updated_at") values ($1, $2, DEFAULT, $3, $4, $5, $6, $7, DEFAULT, $8, $9, $10) returning "id" - column "$attributes" of relation "xxx" does not exist"插入 "xxx" ("$attributes", "$frozen", "$hidden", "$originalAttributes", "$parent", "$persisted", "$relations", "$sideLoaded", "$visible" 、“ setters ”、“created_at”、“updated_at”)值($1、$2、DEFAULT、$3、$4、$5、$6、$7、DEFAULT、$8、$9、$10)返回“id”-列“$attributes”关系“xxx”不存在”

I'm not using .save() because this return true/false and i need to return the created record我没有使用.save()因为它返回真/假,我需要返回创建的记录

When you use new instance of ClasseLivroHistorico object you need to use save() method.当您使用ClasseLivroHistorico对象的新实例时,您需要使用save()方法。 Like:喜欢:

const primeiroClasseLivroHistorico = new ClasseLivroHistorico()
...
await primeiroClasseLivroHistorico.save()

return primeiroClasseLivroHistorico

or或者

If you want to use create() method you have to give it the information in an array.如果要使用create()方法,则必须在数组中为其提供信息。 Like:喜欢:

let data = { class_id: classeId, ... }

const primeiroClasseLivroHistorico = await ClasseLivroHistorico.create(data)

Don't hesitate if you need more information如果您需要更多信息,请不要犹豫

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM