Details
-
Type:
Improvement
-
Status:
In Progress
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: 2.3
-
Fix Version/s: None
-
Component/s: Tools
-
Security Level: All
-
Labels:None
Description
In Doctrine 2.3 the 'add' and 'remove' methods in oneToMany associations have another problem (in earlier versions like 2.2 this worked correct). The singular form is not correctly detected if the property ends with 'ies' like 'entries' which should be transformed to 'entry'.
I have this YAML definition:
Archive:
type: entity
fields:
id:
id: true
type: integer
unsigned: false
nullable: false
generator:
strategy: IDENTITY
oneToMany:
entries:
targetEntity: Entry
mappedBy: archive
This generates these methods:
public function addEntrie(\Entry $entries) { ... } public function removeEntrie(\Entry $entries) { ... }
Because in the EntityGenerator only the plural 's' is removed. It would be nice if an ending of 'ies' could be replaced by 'y'. So that we get these methods
public function addEntry(\Entry $entries) { ... } public function removeEntry(\Entry $entries) { ... }
My fork already has the changes https://github.com/naitsirch/doctrine-orm2/commit/a3adfccb4927d61da7debae46ed0fff61e4212f8
I have opened a pull request here https://github.com/doctrine/doctrine2/pull/530
Issue Links
Activity
Christian Stoller
made changes -
| Field | Original Value | New Value |
|---|---|---|
| Affects Version/s | 2.3 [ 10185 ] | |
| Component/s | Tools [ 10015 ] |
Christian Stoller
made changes -
| Description |
This issue is created automatically through a Github pull request on behalf of naitsirch:
Url: https://github.com/doctrine/doctrine2/pull/530 Message: The singular form is not correctly detected if the property ends with 'ies' like 'entries' which should be transformed to 'entry'. This change is related to http://www.doctrine-project.org/jira/browse/DDC-1268 |
In Doctrine 2.3 the 'add' and 'remove' methods in oneToMany associations have another problem (in earlier versions like 2.2 this worked correct). The singular form is not correctly detected if the property ends with 'ies' like 'entries' which should be transformed to 'entry'.
I have this YAML definition: {code} Archive: type: entity fields: id: id: true type: integer unsigned: false nullable: false generator: strategy: IDENTITY oneToMany: entries: targetEntity: Entry mappedBy: archive {code} This generates these methods: {code} public function addEntrie(\Entry $entries) { ... } public function removeEntrie(\Entry $entries) { ... } {code} Because in the EntityGenerator only the plural 's' is removed. It would be nice if an ending of 'ies' could be replaced by 'y'. So that we get these methods {code} public function addEntry(\Entry $entries) { ... } public function removeEntry(\Entry $entries) { ... } {code} My fork already has the changes https://github.com/naitsirch/doctrine-orm2/commit/a3adfccb4927d61da7debae46ed0fff61e4212f8 I have opened a pull request here https://github.com/doctrine/doctrine2/pull/530 |
Christian Stoller
made changes -
| Status | Open [ 1 ] | Awaiting Feedback [ 10000 ] |
Marco Pivetta
made changes -
| Status | Awaiting Feedback [ 10000 ] | In Progress [ 3 ] |
Benjamin Eberlei
made changes -
| Issue Type | Bug [ 1 ] | Improvement [ 4 ] |
Benjamin Eberlei
made changes -
Benjamin Eberlei
made changes -