【发布时间】:2017-01-06 19:10:15
【问题描述】:
好的,所以我有一个名为:Commande 的实体。带有属性:
滴度,
导演
类别 ,
编辑,
大奖赛。
我想在 symfony 3 中创建一个 API REST json,它允许任何设备(例如 Android)在这个实体中保存数据。
例如,在我的 RestController 中,此代码允许我从另一个实体恢复数据:Livres
<?php
namespace BiblioBundle\Controller;
use FOS\RestBundle\Controller\Annotations\View;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\Security\Core\Exception\AccessDeniedException;
class BiblioRestController extends Controller
{
public function getListeAction(){
$Livres = $this->getDoctrine()->getRepository('BiblioBundle:Livres')->findAll();
if(!$Livres){
throw $this->createNotFoundException();
}
return $Livres;
}
}
API地址是:http://127.0.0.1:8000/api/liste.json
怎么做? 谢谢。
Commande.php:
<?php
namespace BiblioBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use JMS\Serializer\Annotation\ExclusionPolicy;
use JMS\Serializer\Annotation\Expose;
use JMS\Serializer\Annotation\Groups;
use JMS\Serializer\Annotation\VirtualProperty;
use JMS\Serializer\Annotation\Type;
/**
* Commande
* @ORM\Table(name="commande")
* @ORM\Entity(repositoryClass="BiblioBundle\Repository\CommandeRepository")
*
* @ExclusionPolicy("all")
*/
class Commande
{
/**
* @var int
* @ORM\Column(name="Id", type="integer")
*/
private $id;
/**
* @var string
* @ORM\Column(name="Titre", type="string", length=80)
* @Expose
*/
private $titre;
/**
* @var string
* @ORM\Column(name="Auteur", type="string", length=50)
* @Expose
*/
private $auteur;
/**
* @var string
* @ORM\Column(name="Categorie", type="string", length=60)
* @Expose
*/
private $categorie;
/**
* @var string
* @ORM\Column(name="Editeur", type="string", length=70)
* @Expose
*/
private $editeur;
/**
* @var string
* @ORM\Column(name="Prix", type="string", length=30)
* @Expose
*/
private $prix;
/**
* Get id
*
* @return int
*/
public function getId()
{
return $this->id;
}
/**
* Set titre
*
* @param string $titre
*
* @return Commande
*/
public function setTitre($titre)
{
$this->titre = $titre;
return $this;
}
/**
* Get titre
*
* @return string
*/
public function getTitre()
{
return $this->titre;
}
/**
* Set auteur
*
* @param string $auteur
*
* @return Commande
*/
public function setAuteur($auteur)
{
$this->auteur = $auteur;
return $this;
}
/**
* Get auteur
*
* @return string
*/
public function getAuteur()
{
return $this->auteur;
}
/**
* Set categorie
*
* @param string $categorie
*
* @return Commande
*/
public function setCategorie($categorie)
{
$this->categorie = $categorie;
return $this;
}
/**
* Get categorie
*
* @return string
*/
public function getCategorie()
{
return $this->categorie;
}
/**
* Set editeur
*
* @param string $editeur
*
* @return Commande
*/
public function setEditeur($editeur)
{
$this->editeur = $editeur;
return $this;
}
/**
* Get editeur
*
* @return string
*/
public function getEditeur()
{
return $this->editeur;
}
/**
* Set prix
*
* @param string $prix
*
* @return Commande
*/
public function setPrix($prix)
{
$this->prix = $prix;
return $this;
}
/**
* Get prix
*
* @return string
*/
public function getPrix()
{
return $this->prix;
}
}
【问题讨论】:
-
您只是在寻找建议吗?你试过什么?这个问题的答案可能是相当多的代码......
-
我只想知道在我的 restController 中创建允许外部设备或程序(Android、Postman)持久化数据的 API REST 的语法是什么。只是 。不是完整的代码
-
你看过FOSRestBundle了吗?
-
是的,谢谢我找到了解决方案
标签: android json rest api symfony