=5.5.9", "doctrine/doctrine-bundle": "^1.8", -6ren">
gpt4 book ai didi

php - Symfony 3.4 没有要处理错误的元数据类

转载 作者:可可西里 更新时间:2023-11-01 08:02:46 25 4
gpt4 key购买 nike

我已经安装了 symfony 3.4 和 doctrine 包

"php": ">=5.5.9",
"doctrine/doctrine-bundle": "^1.8",
"doctrine/doctrine-migrations-bundle": "^1.3",
"doctrine/orm": "^2.5",
"incenteev/composer-parameter-handler": "^2.0",
"sensio/distribution-bundle": "^5.0.19",
"sensio/framework-extra-bundle": "^5.0.0",
"symfony/monolog-bundle": "^3.1.0",
"symfony/polyfill-apcu": "^1.0",
"symfony/swiftmailer-bundle": "^2.6.4",
"symfony/symfony": "3.4.*",
"twig/twig": "^1.0||^2.0"

使用以下命令创建数据库

php bin/console doctrine:database:create

G:\XAMPP\htdocs\project>php bin/console doctrine:schema:validate
[Mapping] OK - The mapping files are correct.
[Database] OK - The database schema is in sync with the mapping files.

G:\XAMPP\htdocs\project>php bin/console doctrine:schema:validate
[Mapping] OK - The mapping files are correct.
[Database] OK - The database schema is in sync with the mapping files.

G:\XAMPP\htdocs\project>php bin/console doctrine:schema:update --force
No Metadata Classes to process.

G:\XAMPP\htdocs\project>

每当我运行 php bin/console doctrine:schema:update --force 命令时,它都会抛出类似

的错误

No Metadata Classes to process.

我创建了文档中的实体类 http://symfony.com/doc/3.4/doctrine.html

产品实体类

<?php

namespace AppBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
* @ORM\Entity
* @ORM\Table(name="product")
*/
class Product
{
/**
* @ORM\Column(type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;

/**
* @ORM\Column(type="string", length=100)
*/
private $name;

/**
* @ORM\Column(type="decimal", scale=2)
*/
private $price;


/**
* Get id
*
* @return int
*/
public function getId()
{
return $this->id;
}

/**
* Set name
*
* @param string $name
*
* @return Product
*/
public function setName($name)
{
$this->name = $name;

return $this;
}

/**
* Get name
*
* @return string
*/
public function getName()
{
return $this->name;
}

/**
* Set price
*
* @param integer $price
*
* @return Product
*/
public function setPrice($price)
{
$this->price = $price;

return $this;
}

/**
* Get price
*
* @return int
*/
public function getPrice()
{
return $this->price;
}
}

最佳答案

是的,最后我发现问题出在 John.orm.php 文件上,该文件将在我运行 php bin/console doctrine:generate:entity

时生成

我使用以下命令创建了实体类

php bin/console doctrine:generate:entity

然后会提示

Welcome to the Doctrine2 entity generator

This command helps you generate Doctrine2 entities.

First, you need to give the entity name you want to generate.
You must use the shortcut notation like AcmeBlogBundle:Post.

The Entity shortcut name: AppBundle:John

Determine the format to use for the mapping information.

Configuration format (yml, xml, php, or annotation) [annotation]: php

Instead of starting with a blank entity, you can add some fields now.
Note that the primary key will be added automatically (named id).

Available types: array, simple_array, json_array, object,
boolean, integer, smallint, bigint, string, text, datetime, datetimetz,
date, time, decimal, float, binary, blob, guid.

New field name (press <return> to stop adding fields): id
Field "id" is already defined.
New field name (press <return> to stop adding fields): username
Field type [string]: string
Field length [255]:
Is nullable [false]: true
Unique [false]: false

New field name (press <return> to stop adding fields): password
Field type [string]:
Field length [255]:
Is nullable [false]: true
Unique [false]:

New field name (press <return> to stop adding fields): dob
Field type [string]: date
Is nullable [false]: true
Unique [false]:

New field name (press <return> to stop adding fields):


Entity generation


created .\src\AppBundle/Entity/John.php
created .\src\AppBundle/Resources/config/doctrine/
created .\src\AppBundle/Resources/config/doctrine/John.orm.php
> Generating entity class G:\XAMPP\htdocs\project\src\AppBundle\Entity\John.php:
OK!
> Generating repository class G:\XAMPP\htdocs\project\src\AppBundle\Repository\J
ohnRepository.php: OK!
> Generating mapping file G:\XAMPP\htdocs\project\src\AppBundle\Resources\config
\doctrine\John.orm.php: OK!


Everything is OK! Now get to work :).



G:\XAMPP\htdocs\project>

成功后会在AppBundle\Entity;文件夹中创建实体类,在AppBundle\Repository;中创建仓库类,同时生成John.orm .phpAppBundle\Resources\config\doctrine\John.orm.php

如果我运行 php bin/console doctrine:schema:update --force 删除 John.orm.php 文件后,它将生成表格。

关于php - Symfony 3.4 没有要处理错误的元数据类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48050638/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com