Я новичок в loopback, и у меня есть проблема с ним.
Я создал базу данных Postgres и управлял ею, и все, кажется, работает нормально. База данных создается загрузочными файлами в формате json и содержит необходимые значения.
Но когда я хочу выполнить метод findById, я получаю следующую проблему:
Ошибка для запроса GET / api / members / 1? Id = 1: Ошибка: Model :: findById требует аргумент id
определение модели:
{
"name": "Member",
"strict": true,
"idInjection": true,
"base": "User",
"options": {
"validateUpsert": true
},
"properties": {
"firstname": {
"type": "string",
"required": true
},
"lastname": {
"type": "string",
"required": true
},
"questiontype": {
"type": "number",
"required": true
},
"questionanswer": {
"type": "string",
"required": true
}
},
"validations": [],
"relations": {
"issues": {
"type": "hasMany",
"model": "Issue",
"foreignKey": "authorId"
}
И я вызываю findById из моей учетной записи. Активность:
connect_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
RestAdapter restAdapter = new RestAdapter(getApplicationContext(), "http://" + MY_IP + ":3000/api");
MemberRepository memberRepo = restAdapter.createRepository(MemberRepository.class);
memberRepo.findById(1, new ObjectCallback<Member>() {
@Override
public void onSuccess(Member member) {
System.out.println("Found !");
}
public void onError(Throwable t) {
System.out.println("Fail");
}
});
}
});
Дело в том, что когда я выполняю метод findById на localhost: 3000 / explorer из loopback, он возвращает правильный результат и вообще никакой ошибки.
Проблема появляется только на Android. Я использую библиотеку strongloop, предоставляемую loopback, которая использует класс UserRepository, который содержит методы login, logout, find, ... Таким образом, они не должны быть никаких ошибок, исходящих от самого метода. Что привело меня к актуальной проблеме, я действительно не могу понять, откуда она?