Symfony2 数据装置

标签 symfony

对 Symfony2 非常陌生,所以正在努力解决问题。有几张 table 。第一个称为availability_alert。该表具有 id 等常见内容,但需要注意的是,它没有指向任何内容的链接。

第二个表是call booking_class。该字段有几个字段,其中之一是availability_alert_id。该值链接到我的第一个表中的 id 字段。

我有一个可以运行的应用程序,但决定将其移至 Symfony。我使用现有的数据库来生成一些实体类。在我的 BookingClass 实体中,我有一个指向 AvailabilityAlert id 的链接。

/**
 * @var \AlertBundle\Entity\AvailabilityAlert
 *
 * @ORM\ManyToOne(targetEntity="\AlertBundle\Entity\AvailabilityAlert")
 * @ORM\JoinColumns({
 *   @ORM\JoinColumn(name="availability_alert_id", referencedColumnName="id")
 * })
 */
private $availabilityAlert;

现在由于某种原因,它将 setter 设置为该字段,如下所示

public function setAvailabilityAlert(\AlertBundle\Entity\AvailabilityAlert $availabilityAlert = null)
{
    $this->availabilityAlert = $availabilityAlert;

    return $this;
}

所以我首先想确保这是正确的?

接下来,我正在做一些数据装置,所以我这样做 $alert = new AvailabilityAlert();

然后设置一些其他的零碎内容。然后我为另一张 table 做一个 $bookingClass = new BookingClass();

但是,当我尝试设置 id 时 $bookingClass->setAvailabilityAlert($this.$alert->getId());

它告诉我它正在等待 AvailabilityAlert,但它得到的是一个字符串。

所以我只是想知道我在这里做错了什么?

谢谢

最佳答案

问题在于您尝试向 BookingClass 对象添加字符串而不是 AvailabilityAlert 对象。

而不是这个: $bookingClass->setAvailabilityAlert($this.$alert->getId());

简单地尝试一下: $bookingClass->setAvailabilityAlert($alert);

关于Symfony2 数据装置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28435679/

相关文章:

javascript - Symfony2 中的简单 AJAX 请求和响应

php - 使用 PHP 脚本创建的符号链接(symbolic link)没有显示,但确实存在?

doctrine - @UniqueEntity 自定义消息未翻译

symfony - 如何在 Symfony 中设置每个 channel 的 Monolog 日志级别

php - Symfony2 中的组表单域

symfony - 在 Symfony2/MVC 中实现返回响应的方法的最佳位置

php - 在 symfony 生产中将弃用记录到自己的文件中

php - 以编辑形式上传 Symfony 文件

php - Doctrine ORM 唯一字符串不区分大小写

mysql - 如何从 Doctrine 中的连接表(ManyToMany)中删除行?