Ναι, το Runway μπορεί να χρησιμοποιηθεί τόσο με GraphQL όσο και με REST API για την ανάκτηση μοντέλων Eloquent στο Statamic.
Ενσωμάτωση GraphQL API:
- Το Runway επεκτείνει το ενσωματωμένο GraphQL API της Statamic για να επιτρέπει την υποβολή ερωτημάτων στα Eloquent μοντέλα σας.
- Μπορείτε να ενεργοποιήσετε την υποστήριξη GraphQL για τα Eloquent μοντέλα σας στο αρχείο «config/runway.php» ορίζοντας την επιλογή «graphql» => true.
- Αυτό σας επιτρέπει να γράψετε ερωτήματα GraphQL για να ανακτήσετε δεδομένα από τα Eloquent μοντέλα σας, συμπεριλαμβανομένης της υποστήριξης για φιλτράρισμα, ταξινόμηση και σελιδοποίηση.
- Το Runway χειρίζεται αυτόματα την αντιστοίχιση μεταξύ των μοντέλων Eloquent και του σχήματος GraphQL, καθιστώντας εύκολη την ενοποίηση των δεδομένων σας.
Ενσωμάτωση REST API:
- Το Runway ενσωματώνεται με το ενσωματωμένο REST API της Statamic για να παρέχει πρόσβαση στα Eloquent μοντέλα σας.
- Μπορείτε να ενεργοποιήσετε τα τελικά σημεία REST API για τα Eloquent μοντέλα σας στο αρχείο «config/statamic/api.php» προσθέτοντάς τα στην ενότητα «runway».
- Αυτό θα δημιουργήσει δύο τελικά σημεία για καθένα από τα Eloquent μοντέλα σας:
- `/api/runway/{resourceHandle}` για να ανακτήσετε μια λίστα μοντέλων
- `/api/runway/{resourceHandle}/{id}` για να ανακτήσετε ένα συγκεκριμένο μοντέλο
- Το Runway υποστηρίζει επίσης το φιλτράρισμα των αποκρίσεων REST API ορίζοντας τα "επιτρεπόμενα_φίλτρα" στο αρχείο "config/statamic/api.php".
Αξιοποιώντας την ενσωμάτωση του Runway τόσο με τα GraphQL όσο και με τα API REST, μπορείτε να εκθέσετε απρόσκοπτα τα Eloquent μοντέλα σας στις εφαρμογές front-end, στις εξωτερικές υπηρεσίες ή σε οποιοδήποτε άλλο σύστημα χρειάζεται να καταναλώσει τα δεδομένα σας με Statamic.
Αυτή η ευελιξία σάς επιτρέπει να επιλέξετε την προσέγγιση API που ταιριάζει καλύτερα στις απαιτήσεις του έργου σας, είτε πρόκειται για αρχιτεκτονική βασισμένη σε GraphQL είτε για πιο παραδοσιακή προσέγγιση που βασίζεται στο REST.
Αναφορές:[1] https://runway.duncanmcclean.com/rest-api
[2] https://statamic.com/addons/rad-pack/runway
[3] https://runway.duncanmcclean.com/graphql
[4] https://statamic.dev/rest-api
[5] https://statamic.dev/graphql