[Dbix-class] How to build a "good" object with deep nested prefetched rows from raw data?

Oleg Kostyuk cub.uanic at gmail.com
Thu May 2 10:57:54 GMT 2013


VGhlcmUgYXJlIGFscmVhZHkgc2V2ZXJhbCByZWFkeSB0byB1c2Ugc29sdXRpb25zIHRvCnN0b3Jl
IGhpZXJhcmNoaWNhbCBzdHJ1Y3R1cmVzIGluIGRhdGFiYXNlIC0gd2h5IGRvIHlvdSB3YW50IHRv
IHJlaW52ZW50IHRoZQp3aGVlbD8KICBodHRwOi8vc2VhcmNoLmNwYW4ub3JnL2Rpc3QvREJJeC1D
bGFzcy1UcmVlLwogIGh0dHA6Ly9zZWFyY2guY3Bhbi5vcmcvZGlzdC9EQkl4LUNsYXNzLVRyZWUt
TW9iaXVzLwogIGh0dHA6Ly9zZWFyY2guY3Bhbi5vcmcvZGlzdC9EQkl4LUNsYXNzLVRyZWUtTmVz
dGVkU2V0LwoKCgoKMjAxMy81LzIgRG1pdHJ5IEwuIDxkaW0weGZmQGdtYWlsLmNvbT4KCj4gSGVs
bG8hCj4KPiBPVkVSVklFVwo+IEltYWdpbmUgdGhhdCB3ZSBoYXZlIHNvbWUgZGF0YSBpbiBEQiwg
d2hpY2ggY2FuIGJlIHJlcHJlc2VudGVkIGluIG5lc3RlZAo+IHN0cnVjdHVyZSBFZy4gY2F0ZWdv
cmllcyB0cmVlOgo+IENSRUFURSBUQUJMRSBjYXRlZ29yaWVzICgKPiAgICAgaWQgSU5UIE5PVCBO
VUxMLAo+ICAgICBwYXJlbnRfaWQgSU5UIE5VTEwgLAo+ICAgICB0aXRsZSBURVhULAo+ICAgICBD
T05TVFJBSU5UICJzdWJjYXRlZ29yaWVzIiBGT1JFSUdOIEtFWSgicGFyZW50X2lkIikgUkVGRVJF
TkNFUwo+ICJjYXRlZ29yaWVzIigiaWQiKQo+ICk7Cj4KPiBQUk9CTEVNCj4gTm93IHdlIHdhbnQg
dG8gcmV0cmlldmUgYWxsIHN1YmNhdGVnb3JpZXMgZm9yIGNhdGVnb3J5KGlkID0gJGlkKSB3aXRo
IDNyZAo+IG5lc3RlZCBsZXZlbC4gRm9yIGV4YW1wbGUgd2Ugd2lsbCB3YW50IHJldHJpZXZlIHRo
ZSBuZXh0IHN0cnVjdHVyZToKPiBDYXRlZ29yeShpZD0kaWQpCj4gLSBDYXRlZ29yeSAxKGlkPWlk
MSwgcGFyZW50X2lkPSRpZCkKPiAtIC0gQ2F0ZWdvcnkgMS0xKGlkPWlkMywgcGFyZW50X2lkPWlk
MSkKPiAtIC0gQ2F0ZWdvcnkgMS0yKGlkPWlkNCwgcGFyZW50X2lkPWlkMSkKPiAtIC0gQ2F0ZWdv
cnkgMS0zKGlkPWlkNSwgcGFyZW50X2lkPWlkMSkKPiAtIENhdGVnb3J5IDIoaWQ9aWQyLCBwYXJl
bnRfaWQ9JGlkKQo+IC0gLSBDYXRlZ29yeSAyLTEoaWQ9aWQ2LCBwYXJlbnRfaWQ9aWQyKQo+Cj4g
SW4gb3VyIGNvZGUgd2UgY2FuIGRvIHRoaXMgdmllIERCSXg6OkNsYXNzCj4gJHJzID0gJHNjaGVt
YQo+ICAgICAtPnJlc3VsdHNldCgnQ2F0ZWdvcmllcycpCj4gICAgIC0+c2VhcmNoKAo+ICAgICAg
ICAgewo+ICAgICAgICAgICAgICdtZS5pZCcgPT4kaWQKPiAgICAgICAgIH0sCj4gICAgICAgICB7
Cj4gICAgICAgICAgICAgcHJlZmV0Y2ggPT4geydzdWJjYXRlZ29yaWVzJyA9PiAnc3ViY2F0ZWdv
cmllcyd9Cj4gICAgICAgICB9Cj4gICAgICk7Cj4KPiBBbmQgbm93IHdlIGNhbiBjYWxsIHNvbWV0
aGluZyBsaWtlCj4gJHJzLT5maXJzdC0+c3ViY2F0ZWdvcmllcy0+Zmlyc3QtPnN1YmNhdGVnb3Jp
ZXMtPmZpcnN0LT4uLi4tPnRpdGxlCj4KPiBBbmQgd2Ugd2lsbCBnZXQgcXVlcnkgbGlrZSAuLi4g
TEVGVCBKT0lOIC4uLiBMRUZUIEpPSU4gLi4uCj4gSWYgd2Ugd2FudCB0aGUgNHRoIG5lc3RlZCBs
ZXZlbCwgd2Ugd2lsbCBnZXQgKExFRlQgSk9JTikgeCAzLgo+IElmIHdlIHdhbnQgdGhlIE10aCBu
ZXN0ZWQgbGV2ZWwsIHdlIHdlbGwgZ2V0IChMRUZUIEpPSU4pIHggTS4KPgo+IFNPTFZFCj4gU28s
IHRvIHNvbHZlIHRoaXMgbXVsdGlwbGUgTEVGVCBKT0lOIHdlJ3ZlIGNyZWF0ZWQgc29tZSBzdG9y
ZWQgcHJvY2VkdXJlCj4gaW4gREIsIHdoaWNoIHJldHVybnMgdGhlIHNhbWUgZGF0YSBhcyBtdWx0
aXBsZSBMRUZUIEpPSU4KPiAoY2F0ZWdvcnlfZGVzY2VuZGFudHMoaWQpKS4gYnV0IHJldHVybnMg
aXQgdmVyeSBmYXN0Lgo+Cj4gUVVFU1RJT04KPiBIb3cgY2FuIEkgY29udmVydCByYXcgZGF0YSwg
d2hpY2ggY291bGQgYmUgcmV0dXJuZWQgYnkgY2FsbGluZwo+IGNhdGVnb3J5X2Rlc2NlbmRhbnRz
KCRpZCksIHRvIGEgImdvb2QiIERCSXg6OkNsYXNzIG9iamVjdD8KPiBJIHdhbnQgdG8gY2FsbCBj
YXRlZ29yeV9kZXNjZW5kYW50cygkaWQpLCBhbmQgdGhlbiBJIHdhbnQgdG8gdXNlIHNvbWV0aGlu
Zwo+IGxpa2UgdGhpczoKPiAkcnMtPmZpcnN0LT5zdWJjYXRlZ29yaWVzLT5maXJzdC0+c3ViY2F0
ZWdvcmllcy0+Zmlyc3QtPi4uLi0+dGl0bGUKPgo+IFRoYW5rIHlvdSEKPgo+IC0tCj4gLy93YnIs
IERtaXRyeSBMLgo+Cj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KPiBMaXN0OiBodHRwOi8vbGlzdHMuc2NzeXMuY28udWsvY2dpLWJpbi9tYWlsbWFuL2xp
c3RpbmZvL2RiaXgtY2xhc3MKPiBJUkM6IGlyYy5wZXJsLm9yZyNkYml4LWNsYXNzCj4gU1ZOOiBo
dHRwOi8vZGV2LmNhdGFseXN0LnBlcmwub3JnL3JlcG9zL2Jhc3QvREJJeC1DbGFzcy8KPiBTZWFy
Y2hhYmxlIEFyY2hpdmU6Cj4gaHR0cDovL3d3dy5ncm9rYmFzZS5jb20vZ3JvdXAvZGJpeC1jbGFz
c0BsaXN0cy5zY3N5cy5jby51awo+CgoKCi0tIApTaW5jZXJlbHkgeW91cnMsCk9sZWcgS29zdHl1
ayAoQ1VCLVVBTklDKQotLS0tLS0tLS0tLS0tLSBuZXh0IHBhcnQgLS0tLS0tLS0tLS0tLS0KQW4g
SFRNTCBhdHRhY2htZW50IHdhcyBzY3J1YmJlZC4uLgpVUkw6IGh0dHA6Ly9saXN0cy5zY3N5cy5j
by51ay9waXBlcm1haWwvZGJpeC1jbGFzcy9hdHRhY2htZW50cy8yMDEzMDUwMi8yNTJlODQ4Zi9h
dHRhY2htZW50Lmh0bQo=


More information about the DBIx-Class mailing list