Мне нужно найти пользовательский объект в symfony2 на основе имени пользователя или электронной почты. Это не для входа в систему, а для других действий пользователя.найти пользователя по имени пользователя от нескольких поставщиков [symfony2]
Я могу просто запросить репозиторий (Doctrine2) и вызвать метод loadByUsername из UserProviderInterface, который находится в моем классе репозитория.
Но код, который должен сделать это, будет использоваться в нескольких проектах, и мне нужно, чтобы он был более общим. Пользовательский класс/таблица может отличаться или пользователи могут поступать от совершенно другого типа провайдера.
Есть ли способ найти пользователя по имени пользователя, так же как сам Symfony2 используется при входе в систему? Таким образом, он будет работать независимо от того, как пользовательские провайдеры настроены в security.yml.
Есть ли какая-нибудь услуга в Symfony2, которую я могу использовать для этого? Есть ли «служба поставщика услуг», где я могу вызвать метод «loadUserByUsername», который будет проверять каждый настроенный поставщик?
Так вы настраиваете поставщиков пользователей. Вопрос в том, как я могу использовать эту конфигурацию, чтобы найти пользователя, когда у меня есть только имя пользователя. – DoppyNL
Вы хотите использовать провайдера, которому вы являетесь имя пользователя, чтобы найти пользователя для входа в систему? – MouradK
У меня есть имя пользователя и вы хотите получить пользовательский объект. Поскольку уже есть поставщики пользователей, настроенные в security.yml, имеет смысл использовать эту информацию. Но я не могу найти службы symfony по умолчанию, которые позволяют мне это делать. – DoppyNL