Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
TemKa_SD

Doctrine ORM findOneBy как будет в IPS?

Рекомендованные сообщения

Здравствуйте. Переношу потихоньку функционал движка на Doctrine ORM в виде модуля IPS. Там есть такая строчка:

 

$dbPlayer = $em->getRepository('StatsBundle:StatsGameplayerScored')->findOneBy(['name' => $p['name'], 'server' => $p['spoofedrealm']]);

 

Понятно, подгружается файл с функциями и используется метод выборки по имени и серверу. Как такое будет в IPS?

 

Правильно?

 

$dbPlayer = \IPS\sharedstats\Entity\StatsGameplayerScored::load(['name' => $p['name'], 'server' => $p['spoofedrealm']]);

Поделиться сообщением


Ссылка на сообщение
$dbPlayer = \IPS\sharedstats\Entity\StatsGameplayerScored::constructFromData($db->select('*', \IPS\sharedstats\Entity\StatsGameplayerScored::$databaseTable, (['name=? AND server=?', $p['name'], $p['spoofedrealm']]))->first());

Поделиться сообщением


Ссылка на сообщение

Понял, нужно подгрузить \IPS\Content\Controller а как? Мне в Task надо class _heroesScore extends \IPS\Task

Поделиться сообщением


Ссылка на сообщение

Не отображается скриншот.

 

нужно подгрузить \IPS\Content\Controller а как?

На кой он там нужен?

Поделиться сообщением


Ссылка на сообщение

У меня ошибка:

 

Error

Call to undefined method IPS\sharedstats\Entity\StatsGameplayerScored::constructFromData()

 

Что-то ну, скриншоты не грузит.

Поделиться сообщением


Ссылка на сообщение

Что за класс \IPS\sharedstats\Entity\StatsGameplayerScored?

Поделиться сообщением


Ссылка на сообщение

Функции в нем с другого движка, но из-за них не может быть такой ошибки, они еще нигде не используются.

StatsGameplayerScored.php

Поделиться сообщением


Ссылка на сообщение

Чтобы работало, нужно

class _StatsGameplayerScored extends \IPS\Patterns\ActiveRecord

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Блин, точно. Спасибо.

Поделиться сообщением


Ссылка на сообщение

Undefined offset: 0

 

Это я так понимаю не может выбрать тут что-то? (['name' => $p['name'], 'server' => $p['spoofedrealm']])

Поделиться сообщением


Ссылка на сообщение

Ой, это же стандартный select, я уже разобрался как с ним работать, поэтому переделал, вроде правильно:

 

$dbPlayer = \IPS\sharedstats\Entity\StatsGameplayerScored::constructFromData($db->select('*', \IPS\sharedstats\Entity\StatsGameplayerScored::$databaseTable, (['name=? AND server=?', $p['name'], $p['spoofedrealm']]))->first());

Поделиться сообщением


Ссылка на сообщение

Ой, это же стандартный select, я уже разобрался как с ним работать, поэтому переделал, вроде правильно:

 

Да это я скопировал с Вашего кода "where" и забыл исправил.

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...