0

エンティティ「事実」幅「日付」属性を作成しました。

/**
 * Fact
 *
 * @ORM\Table(name="fact")
 * @ORM\Entity()
 */
class Fact
{
   .....

    /**
     * @var \DateTime
     *
     * @ORM\Column(name="date", type="datetime")
     */
    private $date;

    /**
     * Get date
     *
     * @return \DateTime 
     */
    public function getDate()
    {
        return $this->date;
    }

    ...
}

public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('date', 'date')        
    }

symfony コマンドで CRUD インターフェイスを作成するよりも (bootstrapSymfonyBundle も使用します):

php app/console generate:doctrine:crud --entity=MlatAdminBundle:Fact --format=annotation

だから私はこのエラーを得ました:

Impossible to access an attribute ("date") on a string variable ("inline") in ... /vendor/braincrafted/bootstrap-bundle/Bc/Bundle/BootstrapBundle/Resources/views/Form/form_div_layout.html.twig at line 189 

getDate() 関数の戻り値の型が問題だと思います。DateTime オブジェクトにキャストしましたが、何も変わりません。

4

1 に答える 1

0
/**
 * @ORM\Column(type="datetime", name="date")
 * @Gedmo\Timestampable(on="create")
 */
private $date;

これでコードを変更してみてください。use Gedmo\Mapping\Annotation as Gedmo;また、コードの先頭に追加します。gedmo ベンダーをお持ちでない場合は、インストールしてください。インストール後、そのコードを使用できます。

于 2013-09-24T09:21:07.463 に答える