public function createProduct($name) { $p = new Product(); $ret = $p->create(array('name' => $name)); $this->assertTrue($ret->success); ok($p->id, 'got created id'); return $p; }
/** * * @Route("/add", name="add_product") */ public function addAction() { $product = new Product(); $product->setName('pilka3'); $product->setPrice('29,99'); $product->setDescription('lalalala'); $product->save(); return new Response('Created product ' . $product->getId()); }
/** * Exclude object from result * * @param Product $product Object to remove from the list of results * * @return ProductQuery The current query, for fluid interface */ public function prune($product = null) { if ($product) { $this->addUsingAlias(ProductPeer::ID, $product->getId(), Criteria::NOT_EQUAL); } return $this; }
public function testCreateSubActionWithRelationshipAndReloadExistingSubRecord() { $tmpfile = tempnam('/tmp', 'test_image_') . '.png'; copy('tests/data/404.png', $tmpfile); $files = ['image' => CreateFileArray('404.png', 'image/png', $tmpfile)]; // new ActionRequest(['title' => 'Test Image'], $files); $createImage = new CreateProductImage(['title' => 'Test Image'], ['files' => $files]); $this->assertActionInvokeSuccess($createImage); $image = $createImage->getRecord(); $this->assertNotNull($image); $this->assertNotNull($image->id); $product = new Product(); $product->create(['name' => 'Test Product']); $updateProduct = new UpdateProduct(['name' => 'Updated Product'], ['record' => $product]); $relation = clone $updateProduct->getRelation('images'); $updateImage = $updateProduct->createSubActionWithRelationship($relation, ['id' => $image->id], $files); $this->assertInstanceOf('ActionKit\\RecordAction\\UpdateRecordAction', $updateImage); $this->assertActionInvokeSuccess($updateImage); $relation = clone $updateProduct->getRelation('images'); $relation['update_action'] = 'ProductBundle\\Action\\UpdateProductImage'; $updateImage = $updateProduct->createSubActionWithRelationship($relation, ['id' => $image->id], $files); $this->assertInstanceOf('ActionKit\\RecordAction\\UpdateRecordAction', $updateImage); $this->assertActionInvokeSuccess($updateImage); }
/** * Adds an object to the instance pool. * * Propel keeps cached copies of objects in an instance pool when they are retrieved * from the database. In some cases -- especially when you override doSelect*() * methods in your stub classes -- you may need to explicitly add objects * to the cache in order to ensure that the same objects are always returned by doSelect*() * and retrieveByPK*() calls. * * @param Product $obj A Product object. * @param string $key (optional) key to use for instance map (for performance boost if key was already calculated externally). */ public static function addInstanceToPool($obj, $key = null) { if (Propel::isInstancePoolingEnabled()) { if ($key === null) { $key = (string) $obj->getId(); } // if key === null ProductPeer::$instances[$key] = $obj; } }