![](/img/trans.png)
[英]Why my datasource is not chanching from 'memory db' to MySQL in LoopBack 4?
[英]How to import or create loopback Access control related tables from memory datasource to mysql datasource in loopbackJS?
我試圖從基於默認內存的數據源db
創建或導入LoopbackJS AccessToken,ACL,RoleMapping,Role表到我的MySQL數據源。 我定義了一個模型Customer
,它擴展了內置的User
模型。 我的檔案如下
server / datasources.js
{
"db": {
"name": "db",
"connector": "memory"
},
"accountDs": {
"host": "nmrony.local",
"port": 3306,
"database": "loopback_experiments",
"username": "admin",
"password": "****",
"name": "accountDs",
"connector": "mysql"
}
}
服務器/模型-config.js
{
"_meta": {
"sources": [
"loopback/common/models",
"loopback/server/models",
"../common/models",
"./models"
]
},
"AccessToken": {
"dataSource": "accountDs",
"public": false
},
"ACL": {
"dataSource": "accountDs",
"public": false
},
"RoleMapping": {
"dataSource": "accountDs",
"public": false
},
"Role": {
"dataSource": "accountDs",
"public": false
},
"Account": {
"dataSource": "accountDs",
"public": true
},
"Customer": {
"dataSource": "accountDs",
"public": true
}
}
和
common / models / customer.json
{
"name": "Customer",
"base": "User",
"idInjection": true,
"properties": {
"accountNumber": {
"type": "number"
}
},
"validations": [],
"relations": {},
"acls": [],
"methods": []
}
這給了我Customer
模型字段是
{
"accountNumber": 0,
"realm": "",
"username": "",
"credentials": "object",
"challenges": "object",
"email": "",
"emailVerified": false,
"verificationToken": "",
"status": "",
"created": "",
"lastUpdated": "",
"id": 0
}
如何在我的mysql數據庫中導入或創建客戶以及所有ACL,與角色相關的表和accesstoken表? 實際上,我根本不想使用內置的內存數據源。
您最好更改關注者。
common / models / customer.json
{
"name": "Customer",
"base": "User",
"idInjection": true,
"options" : {
"mysql" : {
"schema": "myapp",
"table": "user"
}
}
"properties": {
"accountNumber": {
"type": "number"
}
},
"validations": [],
"relations": {},
"acls": [],
"methods": []
}
並像上面的格式一樣將acl.json,role.json,rolemapping.json放入“選項”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.