2016-12-05 55 views
0

因爲我在用戶建立的模型之上創建了我的用戶模型並創建了一個新的模型庫。但是,如果我試圖建立一種關係,它會給出錯誤「未經授權」。我的環回模型關係不起作用

這裏是我的文件:

user.json

{ 
    "name": "user", 
    "base": "User", 
    "idInjection": true, 
    "options": { 
    "validateUpsert": true 
    }, 
    "properties": { 
    "phone": { 
     "type": "string" 
    }, 
    "age": { 
     "type": "string" 
    } 
    }, 
    "validations": [], 
    "relations": { 
    "library": { 
     "type": "hasMany", 
     "model": "Library", 
     "foreignKey": "" 
    } 
    }, 
    "acls": [ 
    { 
     "accessType": "*", 
     "principalType": "ROLE", 
     "principalId": "$everyone", 
     "permission": "ALLOW" 
    } 
    ], 
    "methods": {} 
} 

和我library.json

{ 
    "name": "Library", 
    "base": "PersistedModel", 
    "strict": false, 
    "idInjection": true, 
    "options": { 
    "validateUpsert": true 
    }, 
    "properties": { 
    "category": { 
     "type": "string" 
    }, 
    "bookTitle": { 
     "type": "string" 
    }, 
    "author": { 
     "type": "string", 
     "required": true, 
     "index": false 
    } 
    }, 
    "validations": [], 
    "relations": { 
    "user": { 
     "type": "belongsTo", 
     "model": "user", 
     "foreignKey": "" 
    } 
    }, 
    "acls": [ 
    { 
     "accessType": "*", 
     "principalType": "ROLE", 
     "principalId": "$everyone", 
     "permission": "ALLOW" 
    } 
    ], 
    "methods": {} 
} 

正如你可以看到,外鍵是空的正是這意味着我不不知道爲什麼我們需要留空,用戶登錄工作正常。它將我設置在右上角的訪問令牌返回給我。

我沒有找到合適的答案,因爲我將數據庫保存到MongoDB。

+0

你正在做哪個HTTP請求? – Overdrivr

+0

這是一個簡單的http調用,指向本地 – ashishSober

+0

哪個HTTP調用,哪個URL?沒有這些信息就不可能回答你的問題。順便說一下,您標記爲有效的答案並不能解決任何問題,因爲它只是設置了與默認配置完全相同的配置。 – Overdrivr

回答

1

請儘量將加入library.json

"acls": [ 
    { 
     "accessType": "*", 
     "principalType": "ROLE", 
     "principalId": "$owner", 
     "permission": "ALLOW" 
    } 
    ] 

和user.json文件中添加這些

"acls": [ 
    { 
     "accessType": "*", 
     "principalType": "ROLE", 
     "principalId": "$everyone", 
     "permission": "ALLOW" 
    },{ 
     "principalType": "ROLE", 
     "principalId": "$owner", 
     "permission": "ALLOW" 

    } 
    ], 

u需要給業主許可,允許模型。 請讓我知道你是否面臨任何問題

+0

極不可能,默認情況下,模型沒有鎖定。 – Overdrivr

+0

感謝它適用於我,但不知道其他用戶是否會嘗試訪問它應該發生的相同的事情,因爲你已經給出了「principalId」:「$ owner」,我不知道 – ashishSober

+0

是正確的,@ Overdrivr ,所以我們將權限授予逐個用戶 – ashishSober