php - Doctrine ReflectionException 属性不存在

标签 php doctrine-orm

我正在尝试在现有数据库之上添加 Doctrine。我让 Doctrine 生成带注释的实体并从那里进行调整。当我尝试加载下面的实体时,出现错误 PHP Fatal error: Uncaught exception 'ReflectionException' with message 'Property Users\\User::$resellerID does not exist'

class User
{
    /* ... */

    /**
     * @var \Doctrine\Common\Collections\Collection
     *
     * @ORM\ManyToOne(targetEntity="\Resellers\Reseller")
     * @ORM\JoinTable(name="reseller",
     *   joinColumns={
     *     @ORM\JoinColumn(name="resellerID", referencedColumnName="resellerID")
     *   },
     *   inverseJoinColumns={
     *     @ORM\JoinColumn(name="resellerID", referencedColumnName="resellerID")
     *   }
     * )
     */
    private $reseller;

    /* ... */
}

userreseller 表都有 resellerID 列。我的理解是,为了加入 ID 列,您不会将 ID 列添加为实体类中的属性。那么是什么导致了 ReflectionException?

最佳答案

由于我已将自动生成的属性从 resellerID 重命名为 reseller(在尝试使用它之后),结果我需要清除 Doctrine 缓存。

php vendor/bin/doctrine.php orm:clear-cache:result
php vendor/bin/doctrine.php orm:clear-cache:query
php vendor/bin/doctrine.php orm:clear-cache:metadata

或者,如果你使用 Symfony 和 Doctrine:

php bin/console doctrine:cache:clear-result
php bin/console doctrine:cache:clear-query
php bin/console doctrine:cache:clear-metadata

关于php - Doctrine ReflectionException 属性不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26187097/

相关文章:

php - 将 Google Analytics 跟踪代码添加到联系表单

php - Notepad++ 中 HTML 或 PHP 的自动完成语法。不自动关闭,自动完成

php - 通过$_FILES变量可以实现SQL注入(inject)吗?

php - Laravel 5.4+ blades 新组件的默认值?

php - 检查 PHP 引荐来源网址

php - Symfony2 - 一个 bundle 中的两个数据库连接 - 似乎无法设置它 - 请参阅我的代码

php - 奇怪的学说结果数组结构如果我在 DQL 查询中传递三次与相同的相关实体连接

php - 在 Doctrine 映射中为表设置 PostgreSQL 模式很热吗?

php - 你如何逃避教义?

php - 如何使用 Doctrine 2 将日期与当前日期进行比较?