Столкнулся с такой штукой
На локалке работало обращение в модели к самой себе как Self::find() и т.д.
Перенес на хостинг - дает ошибку пришлось заменить на имя модели в моем случае Products::find() и т.д.
Заработало.
С чем это связано и как вообще правильнее обращаться в моделе к самой себе, мне внутрений голос подсказывает, что Products::find() - это не феншуй, но он не аргументирует.
Вопрос из разряда - хотелось бы стать умнее, научите или дайте ссылку где почитать.
ПС: может не стоит с большой буквы писать? self:: , а не Self::
Self:: или имя модели::?
Self:: или имя модели::?
Мой видео блог посвященный yii "Yii2 для Блондинок и Чайников: уроки, заметки, гайды"
Re: Self:: или имя модели::?
конечно, self (заглядывайте в доки для проверки ваших догадок). Проблема известна и проста - регистронезависимость винды, которая вам позволяет делать такие ошибки.
юзайте static вместо self. (смотрите кодстайл yii2)
юзайте static вместо self. (смотрите кодстайл yii2)
Re: Self:: или имя модели::?
локалка у вас на винде надо полагать, винда регистронечувствительная. а сервер на линуксе. Он регистрочувствительный.
Соходите на php.net и выясните что значит self и какие еще в php ключевые слова есть, на всякий случай
Соходите на php.net и выясните что значит self и какие еще в php ключевые слова есть, на всякий случай
Re: Self:: или имя модели::?
Советую использовать static http://php.net/manual/ru/language.oop5. ... ndings.php
- slavcodev
- Сообщения: 3134
- Зарегистрирован: 2009.04.02, 21:42
- Откуда: Valencia
- Контактная информация:
Re: Self:: или имя модели::?
И зря. static != self, стоит понимать разницу и использовать то что нужно.jilizart писал(а):Советую использовать static http://php.net/manual/ru/language.oop5. ... ndings.php
Жду Yii 3!
Re: Self:: или имя модели::?
В документации четко прописано, когда использовать self, а когда static.
https://github.com/yiisoft/yii2/blob/ma ... -vs-static
https://github.com/yiisoft/yii2/blob/ma ... -vs-static
Мой профиль на Github
Re: Self:: или имя модели::?
Может.wokster писал(а):ПС: может не стоит с большой буквы писать? self:: , а не Self::