Salut,
Tout d’abord merci @mbritto et @jmjoary pour votre travail sur l’API manager qui nous permet de nous connecter à notre base de données Directus.
J’ai bien réussi à me connecter à mon serveur, j’arrive à y récupérer les infos qui m’intéressent mais…ça va certainement vous sembler toute simple mais je n’arrive pas à envoyer sur mon serveur un nouvel Item.
Mon objet est prêt.
Si j’ai bien compris je fais appel à _directusApiManage.createNewItem.
Ce qui me bloque c’est le paramètre « createItemFunction » Que dois-je entrer ici ?
Merci d’avance pour votre aide, à tous.
Une bonne soirée.
Fabio
Hello,
J’ai eu le même problème que toi et voici la solution :
import 'package:directus_api_manager/directus_api_manager.dart';
@DirectusCollection()
@CollectionMetadata(endpointName: "gameroom")
class GameRoomModel extends DirectusItem {
GameRoomModel.newItem({required String ip, required String status})
: super.newItem() {
setValue(ip, forKey: "ip");
setValue(status, forKey: "state");
}
GameRoomModel(Map<String, dynamic> rawReceivedData) : super(rawReceivedData);
String? get ip => getValue(forKey: "ip");
set ip(String? newIP) => setValue(newIP, forKey: "ip");
String? get status => getValue(forKey: "state");
set status(String? newstatus) => setValue(newstatus, forKey: "state");
}
Ensuite, je fais ma fonction ainsi :
@override
Future<bool> addNewGameRoom(String ipAdress) async {
final newGameRoom = GameRoomModel.newItem(ip: ipAdress, status: "off");
final creationResult =
await _apiManager.createNewItem(objectToCreate: newGameRoom);
print("result ${newGameRoom.ip}");
if (creationResult.isSuccess) {
final gameroomCreated = creationResult.createdItem;
Attention : cela ne fonctionne qu’avec la branche « reflection »
En espérant que ça aide !
Salut,
Merci de ta rapidité.
Entre temps je re-lisais une discussion sur laquelle tu avais déjà répondu.
J’ai modifié mon fichier « directus_model » où je fais mes getter et setter et effectivement ça va tout de suite mieux 
Par contre je vois que, pour toi, lorsque tu appelles la fonctions .createNewItem ça ne te t’obliges pas à entrer un paramètre « createItemFunction » alors que moi oui.
J’ai donc fait appel à .fromDirectus et ça fonctionne.
Merci beaucoup pour ton temps !
Pour une fois que c’est moi qui aide
Je suis en plein sur ces sujets, alors n’hésites pas !
c’est top merci!
On se croise peut être prochainement sur un rendez-vous de groupe, que je vois sur quoi tu travailles.
1 « J'aime »