ariddlestone / ariddlestone/phpstan-cakephp2

Undefined method appears when Component and Model have the same name

Offen
#29 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
PHP
Sterne
2
Forks
3
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Hi.

Thanks for this brilliant extension first of all.

I'm working with project where all Models don't have `Model` suffix. Like described in the official documentation (https://book.cakephp.org/2/en/models.html#understanding-models)

So in case we have Component and Model with the same name it leads to `Call to an undefined method BasicComponent::some_method`.

Code sample:
```php
Basic->some_method();
}
}
```

As I can see component service is setup first so probably it found `BasicComponent` and tries to look method inside of it only and doesn't take into account that models is also exists.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne mit dem Reproduktionsbeispiel aus BasicComponent, Basic model und FakeController und verfolge dann, wie der Resolver $this->Basic auflöst, wenn Komponenten und Modelle denselben Namen haben. Bestätige die Verarbeitung der $uses-Deklaration des Controllers; als erledigt gilt die Aufgabe, wenn die Modellmethode erkannt wird, ohne einen undefined-method-Fehler zu erzeugen, und es für dieses Beispiel einen Regressionstest gibt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
php
Bereich
tooling
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.