Laravel: Εργασία με εύγλωττες σχέσεις

Το Laravel διευκολύνει την επικοινωνία με τη βάση δεδομένων με το Eloquent. Όταν εργάζεστε με Eloquent Relationships θα πρέπει να γνωρίζετε όταν καλείτε δυναμικές μεταβλητές (με τη βοήθεια των μαγικών μεθόδων της PHP) ότι οι παρουσίες των μοντέλων δεν αντικατοπτρίζουν νέες αλλαγές, αλλά αποθηκεύονται μόνιμα κατά την πρώτη κλήση τους.


Στο παρακάτω παράδειγμα συμπεριφέρεται όπως αναμενόταν:

6d32588c32f080ef1896633f261e1e14

Το $ model-> col επιστρέφει πάντα την παλιά τιμή ακόμη και μετά την αλλαγή (επειδή η τιμή ανακτήθηκε αρχικά μία φορά με το Model :: find (42) και μετά αποθηκεύτηκε). Εάν τώρα απευθυνθείτε σε έναν άλλο, συνδεδεμένο πίνακα με $ model-> depend_table , θα μπορούσατε να περιμένετε ότι η δεύτερη κλήση του θα επέστρεφε τη νέα τιμή:

6d32588c32f080ef1896633f261e1e14

Αυτό δεν συμβαίνει επίσης ( $ depend_table = $ model-> dependant_table αποθηκεύει προσωρινά ολόκληρο τον εξαρτώμενο πίνακα). Για να λάβετε μια τρέχουσα τιμή, καλείται η συνάρτηση dependant_table ():

6d32588c32f080ef1896633f261e1e14

Πίσω