2016-07-12 18 views
0

Ich verwende Loopback in meinem Projekt, und ich habe ein MyUser-Modell verwandt (hasMany) zu einem SellerRequests-Modell.Loopback verwenden eine Remote-Methode einer Beziehung


Ich sehe, dass ich jetzt eine POST an/api/MyUsers/machen kann: id/sellerRequests eine neue sellerRequest mit dem Benutzer verknüpft zu schaffen, sondern, was ich will ist tun, um diese Remote-Methode in meinem gemeinsam nutzen /my-user.js Datei.

Ich versuche, ein MyUser .__ create__sellerRequests zu tun, aber das ist undefiniert (dasselbe gilt für MyUser.prototype .__ create__sellerRequests und MyUser.createSellerRequests). Haben Sie eine Idee, wie Sie auf die Remote-Methode zugreifen können?

Danke!

// here is my common/my-user.js file 
module.exports = function(Myuser) { 
    console.log(Myuser.__create__sellerRequests); // This is undefined 
} 

// Here is my MyUser.json 
{ 


"name": "MyUser", 
    "base": "User", 
    "strict": false, 
    "idInjection": false, 
    "options": { 
    "validateUpsert": true 
    }, 
    "properties": { 
    "firstname": { 
     "type": "string" 
    }, 
    "lastname": { 
     "type": "string" 
    }, 
    "gender": { 
     "type": "number" 
    }, 
    "birthday": { 
     "type": "string" 
    }, 
    "country": { 
     "type": "string" 
    }, 
    "description": { 
     "type": "string" 
    }, 
    "spokenLanguages": { 
     "type": "string" 
    }, 
    "phoneNumber": { 
     "type": "string" 
    }, 
    "createdAt": { 
     "type": "date", 
     "defaultfn": "now" 
    } 
    }, 
    "validations": [], 
    "relations": { 
    "sellers": { 
     "type": "hasMany", 
     "model": "Seller", 
     "foreignKey": "customer_id" 
    }, 
    "sellerRequests": { 
     "type": "hasMany", 
     "model": "SellerRequest", 
     "foreignKey": "customer_id" 
    } 
    }, 
    "acls": [ 
    { 
     "principalType": "ROLE", 
     "principalId": "$owner", 
     "permission": "ALLOW", 
     "property": "patchAttributes" 
    }, 
    { 
     "principalType": "ROLE", 
     "principalId": "$everyone", 
     "permission": "ALLOW", 
     "property": "avatar" 
    }, 
    { 
     "principalType": "ROLE", 
     "principalId": "$everyone", 
     "permission": "ALLOW", 
     "property": "defaultAvatar" 
    }, 
    { 
     "principalType": "ROLE", 
     "principalId": "$owner", 
     "permission": "ALLOW", 
     "property": "avatarUpload" 
    }, 
    { 
     "principalType": "ROLE", 
     "principalId": "$owner", 
     "permission": "ALLOW", 
     "property": "avatarDelete" 
    }, 
    { 
     "principalType": "ROLE", 
     "principalId": "$owner", 
     "permission": "ALLOW", 
     "property": "__create__sellerRequests" 
    }, 
    { 
     "principalType": "ROLE", 
     "principalId": "$owner", 
     "permission": "ALLOW", 
     "property": "__destroyById__sellerRequests" 
    }, 
    { 
     "principalType": "ROLE", 
     "principalId": "$owner", 
     "permission": "ALLOW", 
     "property": "__get__sellerRequests" 
    }, 
    { 
     "principalType": "ROLE", 
     "principalId": "$owner", 
     "permission": "ALLOW", 
     "property": "__findById__sellerRequests" 
    } 
    ], 
    "methods": {} 
} 
+0

Was ist Ihr MyUser.json? –

Antwort

0

Get Benutzerinstanz und nutzen diese

<user instance>.sellerRequests.create(data, function(error, result) { 

}); 

wo Daten ein Objekt ist Felder und Werte von SellerRequest Modell enthält.

oder benutzen Sie diese

MyUser.sellerRequests({customer_id: <user_id>, <rest of the fields in seller requests>}, function(error, result) { 

}); 

Referenz: Methods available to the model.

+0

Funktioniert wie ein Charme, danke! – achauchet