verilen "dize", "Satıcı \ NameBundle \ Form \ EntitynameType" beklenen argüman Symfony sürüm 2.7 ile karşılaştığım sorunları (bir proje yükledikten hemen sonra 404 sayfa hatası) Symfony sürüm 3.0 kullanmaya başladım . Bazı küçük problemlerden sonra "app/console" nun "bin/console" ile değiştirildiğini anladım. naam" Bu yüzden yeni proje üzerinde şimdi çalışıyorum ve zaten 1 varlık Biçimiaçıklama olduğunuSymfony 3.0
Codeit/RestaurantBundle && CodeitRestaurantBundle:Reserveren
denilen yeni bir paket oluşturmak gelmiş ve varlık kimliğine sahipse ve 1 tarla denilen "(string, 255). Şemaları güncelledim, Codeit varlıklarını oluşturdum ve bundan sonra başarılı bir şekilde yaptım. Biçim yine ek açıklaması ve idi, önek/reserveren'dur.
Web/reserveren sayfasını ziyaret edersem, sayfamın bir tanıtım sayfasını alırım. Ben aşağıdaki hatayı alıyorum yeni bir giriş eklemeyi deneyin Maalesef eğer:
Expected argument of type "string", "Codeit\RestaurantBundle\Form\ReserverenType" given
My Paketi/Form/ReserverenType.php
<?php
namespace Codeit\RestaurantBundle\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
class ReserverenType extends AbstractType
{
/**
* @param FormBuilderInterface $builder
* @param array $options
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('naam')
;
}
/**
* @param OptionsResolver $resolver
*/
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'Codeit\RestaurantBundle\Entity\Reserveren'
));
}
}
Benim varlık kodu
<?php
namespace Codeit\RestaurantBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Reserveren
*
* @ORM\Table(name="reserveren")
* @ORM\Entity(repositoryClass="Codeit\RestaurantBundle\Repository\ReserverenRepository")
*/
class Reserveren
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="Naam", type="string", length=255)
*/
private $naam;
/**
* Get id
*
* @return int
*/
public function getId()
{
return $this->id;
}
/**
* Set naam
*
* @param string $naam
*
* @return Reserveren
*/
public function setNaam($naam)
{
$this->naam = $naam;
return $this;
}
/**
* Get naam
*
* @return string
*/
public function getNaam()
{
return $this->naam;
}
}
Teşekkürler Cerad! Bu iyi çalıştı .. Ben daha bilinen bir sürümü ile yeni bir proje yapmak için yeniden düşünecek .. Yine de teşekkürler! – Gijsberts
Yeni bir proje için 3.x kullanımıyla ilgili yanlış bir şey yok. Sadece orada bulunan S2 bilgilerinin birazının artık geçerli olmadığını unutmayın. – Cerad
çok teşekkürler, formun neden çalışmadığına ve şimdi bildiğime kızıyordu. – Baig