Мне нужно обновить пароль с помощью пароля sonata admin int fos userbundle 'bcrypt'.
Это мой админ класс,
<?php
namespace AdminBundle\Admin;
use Sonata\AdminBundle\Admin\Admin;
use Sonata\AdminBundle\Datagrid\ListMapper;
use Sonata\AdminBundle\Datagrid\DatagridMapper;
use Sonata\AdminBundle\Form\FormMapper;
use Sonata\AdminBundle\Show\ShowMapper;
class UserAdmin extends Admin {
public function postPersist($object) {
$userManager = $this->get('fos_user.user_manager');
$user = $userManager->findUserBy(array('id'=>$object->id));
$user->setPlainPassword('test');
$userManager->updateUser($user);
}
Это мой пользователь объект,
<?php
// src/AppBundle/Entity/User.php
namespace AdminBundle\Entity;
use FOS\UserBundle\Model\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
* @ORM\Table(name="fos_user")
*/
class User extends BaseUser {
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @var string
*
* @ORM\Column(name="telephone", type="text", length=30, nullable=false)
*/
private $telephone;
/**
* Set nonotification
*
* @param text $telephone
* @return User
*/
public function settelephone($telephone) {
$this->telephone = $telephone;
return $this;
}
/**
* Get telephone
*
* @return text
*/
public function gettelephone() {
return $this->telephone;
}
/**
* @var string
*
* @ORM\Column(name="name", type="text", length=60, nullable=false)
*/
private $name;
/**
* Set nonotification
*
* @param text $name
* @return User
*/
public function setname($name) {
$this->name = $name;
return $this;
}
/**
* Get name
*
* @return text
*/
public function getname() {
return $this->name;
}
/**
* @var string
*
* @ORM\Column(name="surname", type="text", length=60, nullable=false)
*/
private $surname;
/**
* Set nonotification
*
* @param text $name
* @return User
*/
public function setsurname($surname) {
$this->surname = $surname;
return $this;
}
/**
* Get surname
*
* @return text
*/
public function getsurname() {
return $this->surname;
}
public function __construct() {
parent::__construct();
// your own logic
}
}
Но я получаю эту ошибку вместо
Пытался позвонить неопределенная метод с именем «get» класса «AdminBundle \ Admin \ UserAdmin». Вы хотели позвонить? "getActiveSubClass", "getActiveSubclassCode", "getBaseCodeRoute", "getBaseControllerName", "getBaseRouteName", "getBaseRoutePattern", "getBatchActions", "getBreadcrumbs", "GetChild", "GetChildren", "GetClass", «getClassnameLabel », "Получить код", "getConfigurationPool", "getCurrentChild", "getCurrentChildAdmin", "getDataSourceIterator", "getDatagrid", "getDatagridBuilder", "getExportFields", "getExportFormats", "getExtensions", "getFilterFieldDescription", «getFilterFieldDescriptions», «getFilterParameters», «getFilterTheme», «getForm», «getFormBuilder», «getFormContractor», «getFormFieldDescription», «getFormFieldDescriptions», «getFormGroups», "getFormTabs", "getFormTheme", "getIdParameter", "getLabel", "getLabelTranslatorStrategy", "GetList", "getListBuilder", "getListFieldDescription", "getListFieldDescriptions", "getManagerType", "getMaxPageLinks", "getMaxPerPage" , "getMenuFactory", "getModelManager", "getNewInstance", "getNormalizedIdentifier", "GetObject", "getObjectIdentifier", "getObjectMetadata", "GetParent", "getParentAssociationMapping", "getParentFieldDescription", "getPerPageOptions", «getPermissionsShow», «getPersistentParameter», «getPersistentParameters», «getRequest», «getRoot», «getRootCode», «getRouteBuilder», «getRouteGenerator», «getRouterIdParameter», «getRo Утес», "getSecurityHandler", "getSecurityInformation", "getShow", "getShowBuilder", "getShowFieldDescription", "getShowFieldDescriptions", "getShowGroups", "getShowTabs", "getSideMenu", "getSubClasses", "getSubject", «getTemplate», «getTemplates», «getTranslationDomain», «getTranslationLabel», «getTranslator», «getUniqid», «getUrlsafeIdentifier» или «getValidator»?
Было бы очень полезно, если кто-то сможет изучить его.
Вы не должны обновить пароль в случае. Вы сэкономите много головных болей и проблем, если вы просто установите пароль, когда вам нужно его изменить; Пожалуйста, просмотрите это слайд-шоу: http://ocramius.github.io/doctrine-best-practices/#/47 –
Большое спасибо за хедз-ап – vimuth