Vì những vấn đề tôi gặp phải với phiên bản symfony 2.7 (lỗi trang 404 ngay sau khi cài đặt dự án) Tôi bắt đầu sử dụng phiên bản Symfony 3.0 . Sau một số vấn đề nhỏ, tôi đã tìm ra rằng "app/console" được thay thế bằng "bin/console". Vì vậy, tôi đang làm việc tại một dự án mới và tôi đã xây dựng một gói mới với 1 thực thể gọi làĐối số dự kiến của loại "chuỗi", "Vendor NameBundle Form EntitynameType" được cung cấp cho Symfony 3.0
Codeit/RestaurantBundle && CodeitRestaurantBundle:Reserveren
Format là chú thích, và các thực thể có một id và 1 lĩnh vực được gọi "naam "(chuỗi, 255). Tôi cập nhật các lược đồ, tôi tạo ra các thực thể của Codeit và sau đó đã được thực hiện thành công, tôi tạo ra một crud với các hành động viết. Định dạng lại là chú thích và tiền tố là/reserveren.
Vì vậy, nếu tôi truy cập trang web/máy chủ lưu trữ, tôi sẽ nhận được trang hiển thị của tổ chức của tôi. Thật không may nếu tôi cố gắng thêm một mục mới Tôi nhận được lỗi sau:
Expected argument of type "string", "Codeit\RestaurantBundle\Form\ReserverenType" given
My Bundle/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'
));
}
}
đang thực thể của tôi
<?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;
}
}
Cảm ơn Cerad! Điều đó làm việc ra tốt .. Tôi sẽ xem xét lại để thực hiện một dự án mới với một phiên bản nổi tiếng hơn .. Cảm ơn anyway! – Gijsberts
Không có gì sai khi sử dụng 3.x cho một dự án mới. Chỉ cần lưu ý rằng khá nhiều thông tin S2 không còn áp dụng nữa. – Cerad
cảm ơn rất nhiều, đã phát điên vì sao biểu mẫu không hoạt động và bây giờ tôi biết. – Baig