【发布时间】:2017-12-14 07:59:43
【问题描述】:
我有一个相关的表,如下图所示。
书证
id | userfk | bookfk |
1 | 6 | 6 |
2 | 6 | 7 |
3 | 7 | 7 |
4 | 8 | 8 |
书籍
id | name | uerfk |
1 | xyz1 | 6 |
2 | xyz2 | 7 |
3 | xyz3 | 8 |
用户
id | email | phone |
6 | xyz | xyz |
7 | xyz | xyz |
8 | xyz | xyz |
现在我想从 users 表和 bookpermit 表中找到相应参数的书籍结果。 books 表通过外键与 users 表相关联。 bookpermit 表与 books 表的外键相关。
这是图书许可证的sn-p代码
/**
* @var integer
*
* @ORM\Column(name="usersfk", type="integer")
*/
private $usersfk;
//getters and setters apply
/**
* @var integer
*
* @ORM\Column(name="permitid", type="integer")
*/
private $permitid;
//getters and setters apply
// +++++++++++++++++1 relationship mapping between BookPermit and Users ++++++++++++++++++++ //
//weak enity: book_permit can belong to different users
/**
* @ORM\ManyToOne(targetEntity="Users", inversedBy="book_permit")
* @ORM\JoinColumn(name="usersfk", referencedColumnName="id")
*/
private $userspermit;
/**
* Set Users
*
* @param \xxxBundle\Entity\Users $userspermit
* @return
*/
public function setUsersPermit(\xxxxBundle\Entity\Users $userspermit = null)
{
$this->userspermit = $userspermit;
return $this;
}
/**
* Get Users
*
* @return \xxxxBundle\Entity\Users
*/
public function getUsersPermit()
{
return $this->userspermit;
}
// +++++++++++++++++1 relationship mapping between BookPermit and Books ++++++++++++++++++++ //
//weak enity: bookpermit can belong to different books
/**
* @ORM\ManyToOne(targetEntity="bookpermit", inversedBy="book_book_permit")
* @ORM\JoinColumn(name="bookfk", referencedColumnName="usersfk")
*/
private $bookpermit;
/**
* Set Books
*
* @param \xxxxBundle\Entity\Books $bookpermit
* @return
*/
public function setBookPermit(\xxxBundle\Entity\Books $bookpermit = null)
{
$this->bookpermit = $bookpermit;
return $this;
}
/**
* Get Books
*
* @return \xxxxBundle\Entity\Books
*/
public function getBooksPermit()
{
return $this->bookpermit;
}
这是书籍实体的代码sn-p
/**
* @var integer
*
* @ORM\Column(name="usersfk", type="integer")
*/
private $usersfk;
//getters and setters apply here
// +++++++++++++++++1 relationship mapping between Books and Users ++++++++++++++++++++ //
//weak enity: many books can belong to a user
/**
* @ORM\ManyToOne(targetEntity="Users", inversedBy="books")
* @ORM\JoinColumn(name="usersfk", referencedColumnName="id")
*/
private $users;
/**
* Set Users
*
* @param \xxxxBundle\Entity\Users $users
* @return
*/
public function setUsers(\xxxxBundle\Entity\Users $users = null)
{
$this->users = $users;
return $this;
}
/**
* Get Users
*
* @return \xxxxBundle\Entity\Users
*/
public function getUsers()
{
return $this->users;
}
// +++++++++++++++++1 relationship mapping between Books and BookPermit ++++++++++++++++++++ //
//
//super entity: one user can have different book
/**
* @ORM\OneToMany(targetEntity=BookPermit", mappedBy="bookpermit")
*/
private $book_book_permit;
/**
* Add BookPermit
*
* @param \xxxxBundle\Entity\BookPermit $book_book_permit
* @return BookPermit
*/
public function addUserBookPermit(\xxxxBundle\Entity\BookPermit $book_book_permit)
{
$this->book_book_permit[] = $book_book_permit;
return $this;
}
/**
* Remove BookPermit
*
* @param \xxxxBundle\Entity\BookPermit $book_book_permit
*/
public function removeUserBookPermit(\xxxxxBundle\Entity\BookPermit $book_book_permit)
{
$this->book_book_permit->removeElement($book_book_permit);
}
/**
* Get BookPermit
*
* @return \Doctrine\Common\Collections\Collection
*/
public function getUserBookPermit()
{
return $this->book_book_permit;
}
在我的控制器中,我正在尝试返回未找到对象的错误
public function displayAction(Request $request, Users $user, BookPermit $bookpermit)
{
$bookLists= $em->getRepository("xxxBundle:Books")->findBy(
array(
"usersfk" => $user,
"usersfk" => $bookpermit
)
);
}
在调用上述控制器时,它返回 >>> xxxxBundle\Entity\BookPermit 对象未找到。 (404 未找到)。
我的方法可能有什么问题
【问题讨论】:
-
转储 $bookpermit 并查看 ID 号,然后尝试在您的数据库中搜索此 ID。
-
@habibun 我将响应编码为 json。请问我怎么甩掉它。 symfony 新手
-
var_dump($bookpermit);仍然有同样的错误
-
var_dump 退出后,脚本使用php.net/manual/en/function.exit.php
标签: php mysql entity-framework symfony