当我尝试创建我的产品实体时,我收到以下错误:
执行'INSERT INTO产品时发生异常(代码,名称,描述,订单,库存,输入,创建,制造,过期,开始数量,购买价格,开盘价格,价格,可见,停止,查看,关于,brand_id,groups_id ,measurement_id,gender_id)VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,')与params [432211,“trolly bag”,“description”,0,2,“2016-02-01 15:02:57”,“2016-02-01 15:02:57”,“2011-03-08 “,”2016-09-12“,2,100,100,100,1,0,0,”约“,2,2,null,null]:
SQLSTATE [42000]:语法错误或访问冲突:1064 SQL语法中有错误;查看与您的MySQL服务器版本对应的手册,以便在第1行的“订单,库存,条目,创建,制造,到期,开放量,购买_p”附近使用正确的语法
产品实体:
在此处输入代码命名空间AppBundle \ Entity;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\ArrayCollection;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\File\UploadedFile;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Validator\Constraints as Assert;
/**
* @ORM\Entity
* @ORM\Table(name="products")
* @ORM\HasLifecycleCallbacks
* @ORM\Entity(repositoryClass="AppBundle\Repository\ProductRepository")
*/
class Product
{
/**
* @ORM\Column(type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\Column(type="integer")
*/
protected $code;
/**
* @ORM\Column(type="string", length=100)
*/
protected $name;
/**
* @ORM\Column(type="text")
*/
protected $description;
/**
* @ORM\Column(type="integer")
*/
protected $order;
/**
* @ORM\Column(type="integer")
*/
protected $stock;
/**
* @ORM\Column(type="datetime")
*/
protected $entry;
/**
* @ORM\Column(type="datetime")
*/
protected $created;
/**
* @ORM\Column(type="date")
*/
protected $manufactured;
/**
* @ORM\Column(type="date")
*
*/
protected $expire;
/**
* @ORM\Column(type="integer")
*/
protected $openingQuantity;
/**
* @ORM\Column(type="integer")
*/
protected $purchasePrice;
/**
* @ORM\Column(type="integer")
*/
protected $openingPrice;
/**
* @ORM\Column(type="integer")
*/
protected $price;
/**
* @ORM\Column(type="smallint")
*/
protected $visible;
/**
* @ORM\Column(type="smallint")
*/
protected $discontinue;
/**
* @ORM\Column(type="integer")
*/
protected $view;
/**
* @ORM\Column(type="text")
*/
protected $about;
/**
* @ORM\ManyToOne(targetEntity="Brand", inversedBy="product")
* @ORM\JoinColumn(name="brand_id", referencedColumnName="id")
*/
protected $brand;
/**
* @ORM\ManyToOne(targetEntity="Group", inversedBy="product")
* @ORM\JoinColumn(name="groups_id", referencedColumnName="id")
*/
protected $group;
/**
* @ORM\ManyToOne(targetEntity="Measurement", inversedBy="product")
* @ORM\JoinColumn(name="measurement_id", referencedColumnName="id")
*/
protected $measurement;
/**
* @ORM\ManyToOne(targetEntity="Gender", inversedBy="product")
* @ORM\JoinColumn(name="gender_id", referencedColumnName="id")
*/
protected $gender;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set code
*
* @param integer $code
* @return Product
*/
public function setCode($code)
{
$this->code = $code;
return $this;
}
/**
* Get code
*
* @return integer
*/
public function getCode()
{
return $this->code;
}
/**
* 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 description
*
* @param string $description
* @return Product
*/
public function setDescription($description)
{
$this->description = $description;
return $this;
}
/**
* Get description
*
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* Set order
*
* @param integer $order
* @return Product
*/
public function setOrder($order)
{
$this->order = $order;
return $this;
}
/**
* Get order
*
* @return integer
*/
public function getOrder()
{
return $this->order;
}
/**
* Set stock
*
* @param integer $stock
* @return Product
*/
public function setStock($stock)
{
$this->stock = $stock;
return $this;
}
/**
* Get stock
*
* @return integer
*/
public function getStock()
{
return $this->stock;
}
/**
* Set entry
*
* @param \DateTime $entry
* @return Product
*/
public function setEntry($entry)
{
$this->entry = $entry;
return $this;
}
/**
* Get entry
*
* @return \DateTime
*/
public function getEntry()
{
return $this->entry;
}
/**
* Set created
*
* @param \DateTime $created
* @return Product
*/
public function setCreated($created)
{
$this->created = $created;
return $this;
}
/**
* Get created
*
* @return \DateTime
*/
public function getCreated()
{
return $this->created;
}
/**
* Set manufactured
*
* @param \DateTime $manufactured
* @return Product
*/
public function setManufactured($manufactured)
{
$this->manufactured = $manufactured;
return $this;
}
/**
* Get manufactured
*
* @return \DateTime
*/
public function getManufactured()
{
return $this->manufactured;
}
/**
* Set expire
*
* @param \DateTime $expire
* @return Product
*/
public function setExpire($expire)
{
$this->expire = $expire;
return $this;
}
/**
* Get expire
*
* @return \DateTime
*/
public function getExpire()
{
return $this->expire;
}
/**
* Set openingQuantity
*
* @param integer $openingQuantity
* @return Product
*/
public function setOpeningQuantity($openingQuantity)
{
$this->openingQuantity = $openingQuantity;
return $this;
}
/**
* Get openingQuantity
*
* @return integer
*/
public function getOpeningQuantity()
{
return $this->openingQuantity;
}
/**
* Set purchasePrice
*
* @param integer $purchasePrice
* @return Product
*/
public function setPurchasePrice($purchasePrice)
{
$this->purchasePrice = $purchasePrice;
return $this;
}
/**
* Get purchasePrice
*
* @return integer
*/
public function getPurchasePrice()
{
return $this->purchasePrice;
}
/**
* Set openingPrice
*
* @param integer $openingPrice
* @return Product
*/
public function setOpeningPrice($openingPrice)
{
$this->openingPrice = $openingPrice;
return $this;
}
/**
* Get openingPrice
*
* @return integer
*/
public function getOpeningPrice()
{
return $this->openingPrice;
}
/**
* Set price
*
* @param integer $price
* @return Product
*/
public function setPrice($price)
{
$this->price = $price;
return $this;
}
/**
* Get price
*
* @return integer
*/
public function getPrice()
{
return $this->price;
}
/**
* Set visible
*
* @param integer $visible
* @return Product
*/
public function setVisible($visible)
{
$this->visible = $visible;
return $this;
}
/**
* Get visible
*
* @return integer
*/
public function getVisible()
{
return $this->visible;
}
/**
* Set discontinue
*
* @param integer $discontinue
* @return Product
*/
public function setDiscontinue($discontinue)
{
$this->discontinue = $discontinue;
return $this;
}
/**
* Get discontinue
*
* @return integer
*/
public function getDiscontinue()
{
return $this->discontinue;
}
/**
* Set view
*
* @param integer $view
* @return Product
*/
public function setView($view)
{
$this->view = $view;
return $this;
}
/**
* Get view
*
* @return integer
*/
public function getView()
{
return $this->view;
}
/**
* Set about
*
* @param string $about
* @return Product
*/
public function setAbout($about)
{
$this->about = $about;
return $this;
}
/**
* Get about
*
* @return string
*/
public function getAbout()
{
return $this->about;
}
/**
* Set brand
*
* @param \AppBundle\Entity\Brand $brand
* @return Product
*/
public function setBrand(\AppBundle\Entity\Brand $brand = null)
{
$this->brand = $brand;
return $this;
}
/**
* Get brand
*
* @return \AppBundle\Entity\Brand
*/
public function getBrand()
{
return $this->brand;
}
/**
* Set measurement
*
* @param \AppBundle\Entity\Measurement $measurement
* @return Product
*/
public function setMeasurement(\AppBundle\Entity\Measurement $measurement = null)
{
$this->measurement = $measurement;
return $this;
}
/**
* Get measurement
*
* @return \AppBundle\Entity\Measurement
*/
public function getMeasurement()
{
return $this->measurement;
}
/**
* Set gender
*
* @param \AppBundle\Entity\Gender $gender
* @return Product
*/
public function setGender(\AppBundle\Entity\Gender $gender = null)
{
$this->gender = $gender;
return $this;
}
/**
* Get gender
*
* @return \AppBundle\Entity\Gender
*/
public function getGender()
{
return $this->gender;
}
/**
* Set group
*
* @param \AppBundle\Entity\Group $group
* @return Product
*/
public function setGroup(\AppBundle\Entity\Group $group = null)
{
$this->group = $group;
return $this;
}
/**
* Get group
*
* @return \AppBundle\Entity\Group
*/
public function getGroup()
{
return $this->group;
}
}
控制器:
namespace AppBundle\Controller\admin;
use AppBundle\Entity\Product;
use AppBundle\Form\Type\ProductType;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\File\UploadedFile;
use Symfony\Component\HttpFoundation\Request;
class ProductController extends Controller
{
/**
* @Route("/admin/product/create/{group_id}", name="create group product")
*/
public function groupProductCreateAction(Request $request,$group_id)
{
$Group = $this->getDoctrine()->getRepository('AppBundle:Group');
$group = $Group->findOneById($group_id);
$product = new Product();
$form = $this->createForm(new ProductType(), $product)
->add('save', 'submit', array(
'label' => 'Save',
'attr'=>array('class'=>'btn btn-md btn-info')
));
$form->handleRequest($request);
if ($form->isValid()) {
$openingStock = $product->getOpeningQuantity();
$openingPrice = $product->getPrice();
$product->setOrder(0);
$product->setStock($openingStock);
$product->setEntry(new \DateTime());
$product->setCreated(new \DateTime());
$product->setOpeningPrice($openingPrice);
$product->setDiscontinue(0);
$product->setView(0);
$product->setGroup($group);
$em = $this->getDoctrine()->getManager();
$em->persist($product);
$em->flush();
return $this->redirect($this->generateUrl('create category group',
array('category_id' => $group_id, )));
}
return $this->render('admin/product.html.twig', array(
'form' => $form ->createView(),
));
}