ResultSetMapping - How to map a joined entity result without a key parameterDoctrine 2 “Class does not exist” on persistdoctrine 2 many to many with translationSymfony2 No mapping file foundDoctrine2 Self Reference Query — Doesn't workSymfony 2 doctrine persist doesn't work after updating Relationship MappingSymfony2 doctrine join returns too much dataDoctrine2 Can't update owning side in a Many-to-one bidirectional relationshipPropper entity associations mapping with one entity for join table (Doctrine 2)Doctrine 2 annotation issueFalse “new entity found through the relationship” - Object actually exists in database
What is the best word describing the nature of expiring in a short amount of time, connoting "losing public attention"?
If hash functions append the length, why does length extension attack work?
Why did computer video outputs go from digital to analog, then back to digital?
Why did modems have speakers?
Cargo capacity of a kayak
Bounded Torsion, without Mazur’s Theorem
What kind of curve (or model) should I fit to my percentage data?
How can I calculate the cost of Skyss bus tickets
Inverse Colombian Function
What is a "staved" town, like in "Staverton"?
Can't understand how static works exactly
Tire pressure with load and heat
Are there any documented cases of extinction of a species of fungus?
Is it better to merge "often" or only after completion do a big merge of feature branches?
Planck's blackbody curve with "rainbow" in Tikz
My current job follows "worst practices". How can I talk about my experience in an interview without giving off red flags?
Is there a way to shorten this while condition?
Why can't a country print its own money to spend it only abroad?
Higher calorie ice cream
Why is the UH-60 tail rotor canted?
Is the apartment I want to rent a scam?
Is it possible to access the complete command line including pipes in a bash script?
How can I deal with someone that wants to kill something that isn't supposed to be killed?
Has Peter Parker ever eaten bugs?
ResultSetMapping - How to map a joined entity result without a key parameter
Doctrine 2 “Class does not exist” on persistdoctrine 2 many to many with translationSymfony2 No mapping file foundDoctrine2 Self Reference Query — Doesn't workSymfony 2 doctrine persist doesn't work after updating Relationship MappingSymfony2 doctrine join returns too much dataDoctrine2 Can't update owning side in a Many-to-one bidirectional relationshipPropper entity associations mapping with one entity for join table (Doctrine 2)Doctrine 2 annotation issueFalse “new entity found through the relationship” - Object actually exists in database
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
I am trying to optimise retrieving data from the database instead of letting Doctrine handle hydration, to minimize the data retrieval.
I have an object User that contains a lot of connected entities:
class User
ArrayCollection
*
* @ORMOneToMany(targetEntity="WorkersDepartments", mappedBy="worker")
*/
protected $departments;
// ... more code
The WorkerDepartments entity has a composite key: workerId and departmentId, but these parameters are not added to the class:
class WorkerDepartments
/**
* @var Worker
* @ORMId
* @ORMManyToOne(targetEntity="SomeClassWorker", inversedBy="departments")
*/
private $worker;
/**
* @var Department
* @ORMId
* @ORMManyToOne(targetEntity="Department", inversedBy="workers")
*/
private $department;
/**
* @var integer
* @ORMColumn(type="integer")
*/
private $status;
When I try to use the ResultSetMappingBuilder and createNativeQuery method from Doctrine to only query whats required, I cannot map the joined WorkersDepartments object into the User object.
After some reading, this appears to be caused by not mapping the id field into the object.
This created a User object with an empty departments parameter:
$rsm = new ResultSetMappingBuilder($entityManager);
$rsm->addEntityResult(User::class, 'c')
->addFieldResult('c', 'user_id', 'id');
$rsm->addJoinedEntityResult(WorkersDepartments::class, 'wd', 'c', 'departments')
->addFieldResult('wd', 'status', 'status');
This works (after adding the params to the WorkersDepartment object):
$rsm = new ResultSetMappingBuilder($entityManager);
$rsm->addEntityResult(User::class, 'c')
->addFieldResult('c', 'user_id', 'id');
$rsm->addJoinedEntityResult(WorkersDepartments::class, 'wd', 'c', 'departments')
->addFieldResult('wd', 'wd_worker_id', 'workerId');
->addFieldResult('wd', 'wd_department_id', 'departmentId');
->addFieldResult('wd', 'status', 'status');
So the solution here would be adding the parameters to the class, but I would rather not do that, as this is causing duplicate data in the objects and the params won't ever be used.
Do you know a way to map the WorkersDeparments object without having to add the composite key parameters to the class?
symfony doctrine-orm
add a comment |
I am trying to optimise retrieving data from the database instead of letting Doctrine handle hydration, to minimize the data retrieval.
I have an object User that contains a lot of connected entities:
class User
ArrayCollection
*
* @ORMOneToMany(targetEntity="WorkersDepartments", mappedBy="worker")
*/
protected $departments;
// ... more code
The WorkerDepartments entity has a composite key: workerId and departmentId, but these parameters are not added to the class:
class WorkerDepartments
/**
* @var Worker
* @ORMId
* @ORMManyToOne(targetEntity="SomeClassWorker", inversedBy="departments")
*/
private $worker;
/**
* @var Department
* @ORMId
* @ORMManyToOne(targetEntity="Department", inversedBy="workers")
*/
private $department;
/**
* @var integer
* @ORMColumn(type="integer")
*/
private $status;
When I try to use the ResultSetMappingBuilder and createNativeQuery method from Doctrine to only query whats required, I cannot map the joined WorkersDepartments object into the User object.
After some reading, this appears to be caused by not mapping the id field into the object.
This created a User object with an empty departments parameter:
$rsm = new ResultSetMappingBuilder($entityManager);
$rsm->addEntityResult(User::class, 'c')
->addFieldResult('c', 'user_id', 'id');
$rsm->addJoinedEntityResult(WorkersDepartments::class, 'wd', 'c', 'departments')
->addFieldResult('wd', 'status', 'status');
This works (after adding the params to the WorkersDepartment object):
$rsm = new ResultSetMappingBuilder($entityManager);
$rsm->addEntityResult(User::class, 'c')
->addFieldResult('c', 'user_id', 'id');
$rsm->addJoinedEntityResult(WorkersDepartments::class, 'wd', 'c', 'departments')
->addFieldResult('wd', 'wd_worker_id', 'workerId');
->addFieldResult('wd', 'wd_department_id', 'departmentId');
->addFieldResult('wd', 'status', 'status');
So the solution here would be adding the parameters to the class, but I would rather not do that, as this is causing duplicate data in the objects and the params won't ever be used.
Do you know a way to map the WorkersDeparments object without having to add the composite key parameters to the class?
symfony doctrine-orm
add a comment |
I am trying to optimise retrieving data from the database instead of letting Doctrine handle hydration, to minimize the data retrieval.
I have an object User that contains a lot of connected entities:
class User
ArrayCollection
*
* @ORMOneToMany(targetEntity="WorkersDepartments", mappedBy="worker")
*/
protected $departments;
// ... more code
The WorkerDepartments entity has a composite key: workerId and departmentId, but these parameters are not added to the class:
class WorkerDepartments
/**
* @var Worker
* @ORMId
* @ORMManyToOne(targetEntity="SomeClassWorker", inversedBy="departments")
*/
private $worker;
/**
* @var Department
* @ORMId
* @ORMManyToOne(targetEntity="Department", inversedBy="workers")
*/
private $department;
/**
* @var integer
* @ORMColumn(type="integer")
*/
private $status;
When I try to use the ResultSetMappingBuilder and createNativeQuery method from Doctrine to only query whats required, I cannot map the joined WorkersDepartments object into the User object.
After some reading, this appears to be caused by not mapping the id field into the object.
This created a User object with an empty departments parameter:
$rsm = new ResultSetMappingBuilder($entityManager);
$rsm->addEntityResult(User::class, 'c')
->addFieldResult('c', 'user_id', 'id');
$rsm->addJoinedEntityResult(WorkersDepartments::class, 'wd', 'c', 'departments')
->addFieldResult('wd', 'status', 'status');
This works (after adding the params to the WorkersDepartment object):
$rsm = new ResultSetMappingBuilder($entityManager);
$rsm->addEntityResult(User::class, 'c')
->addFieldResult('c', 'user_id', 'id');
$rsm->addJoinedEntityResult(WorkersDepartments::class, 'wd', 'c', 'departments')
->addFieldResult('wd', 'wd_worker_id', 'workerId');
->addFieldResult('wd', 'wd_department_id', 'departmentId');
->addFieldResult('wd', 'status', 'status');
So the solution here would be adding the parameters to the class, but I would rather not do that, as this is causing duplicate data in the objects and the params won't ever be used.
Do you know a way to map the WorkersDeparments object without having to add the composite key parameters to the class?
symfony doctrine-orm
I am trying to optimise retrieving data from the database instead of letting Doctrine handle hydration, to minimize the data retrieval.
I have an object User that contains a lot of connected entities:
class User
ArrayCollection
*
* @ORMOneToMany(targetEntity="WorkersDepartments", mappedBy="worker")
*/
protected $departments;
// ... more code
The WorkerDepartments entity has a composite key: workerId and departmentId, but these parameters are not added to the class:
class WorkerDepartments
/**
* @var Worker
* @ORMId
* @ORMManyToOne(targetEntity="SomeClassWorker", inversedBy="departments")
*/
private $worker;
/**
* @var Department
* @ORMId
* @ORMManyToOne(targetEntity="Department", inversedBy="workers")
*/
private $department;
/**
* @var integer
* @ORMColumn(type="integer")
*/
private $status;
When I try to use the ResultSetMappingBuilder and createNativeQuery method from Doctrine to only query whats required, I cannot map the joined WorkersDepartments object into the User object.
After some reading, this appears to be caused by not mapping the id field into the object.
This created a User object with an empty departments parameter:
$rsm = new ResultSetMappingBuilder($entityManager);
$rsm->addEntityResult(User::class, 'c')
->addFieldResult('c', 'user_id', 'id');
$rsm->addJoinedEntityResult(WorkersDepartments::class, 'wd', 'c', 'departments')
->addFieldResult('wd', 'status', 'status');
This works (after adding the params to the WorkersDepartment object):
$rsm = new ResultSetMappingBuilder($entityManager);
$rsm->addEntityResult(User::class, 'c')
->addFieldResult('c', 'user_id', 'id');
$rsm->addJoinedEntityResult(WorkersDepartments::class, 'wd', 'c', 'departments')
->addFieldResult('wd', 'wd_worker_id', 'workerId');
->addFieldResult('wd', 'wd_department_id', 'departmentId');
->addFieldResult('wd', 'status', 'status');
So the solution here would be adding the parameters to the class, but I would rather not do that, as this is causing duplicate data in the objects and the params won't ever be used.
Do you know a way to map the WorkersDeparments object without having to add the composite key parameters to the class?
symfony doctrine-orm
symfony doctrine-orm
asked Mar 26 at 14:09
PIDZBPIDZB
4087 silver badges24 bronze badges
4087 silver badges24 bronze badges
add a comment |
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55359218%2fresultsetmapping-how-to-map-a-joined-entity-result-without-a-key-parameter%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Is this question similar to what you get asked at work? Learn more about asking and sharing private information with your coworkers using Stack Overflow for Teams.
Is this question similar to what you get asked at work? Learn more about asking and sharing private information with your coworkers using Stack Overflow for Teams.
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55359218%2fresultsetmapping-how-to-map-a-joined-entity-result-without-a-key-parameter%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown