本文整理汇总了PHP中ModelCriteria::findPk方法的典型用法代码示例。如果您正苦于以下问题:PHP ModelCriteria::findPk方法的具体用法?PHP ModelCriteria::findPk怎么用?PHP ModelCriteria::findPk使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ModelCriteria
的用法示例。
在下文中一共展示了ModelCriteria::findPk方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: remove
/**
* {@inheritdoc}
*/
public function remove($data)
{
$entity = null;
if (is_object($data)) {
$entity = $data;
} elseif (is_numeric($data)) {
$this->source->clear();
$entity = $this->source->findPk($data);
} else {
throw new \InvalidArgumentException('Argument passed is not an object or it\'s not id');
}
if (!$entity instanceof \Persistent) {
throw new \InvalidArgumentException('The $entity instance is not supported by the Propel implementation');
}
if ($this->crudManager instanceof CrudManagerInterface) {
$this->crudManager->remove($entity);
} else {
$entity->delete();
}
}
示例2: testFindPkCompositeKey
public function testFindPkCompositeKey()
{
BookstoreDataPopulator::depopulate();
$c = new ModelCriteria('bookstore', 'BookListRel');
$bookListRel = $c->findPk(array(1, 2));
$this->assertNull($bookListRel, 'findPk() returns null when the composite primary key is not found');
Propel::enableInstancePooling();
BookstoreDataPopulator::populate();
// save all books to make sure related objects are also saved - BookstoreDataPopulator keeps some unsaved
$c = new ModelCriteria('bookstore', 'Book');
$books = $c->find();
foreach ($books as $book) {
$book->save();
}
// retrieve the test data
$c = new ModelCriteria('bookstore', 'BookListRel');
$bookListRelTest = $c->findOne();
$pk = $bookListRelTest->getPrimaryKey();
$c = new ModelCriteria('bookstore', 'BookListRel');
$bookListRel = $c->findPk($pk);
$this->assertEquals($bookListRelTest, $bookListRel, 'findPk() can find objects with composite primary keys');
}
示例3: getWorkingModel
/**
* This method will return a new model object or the existing model based on db data. This will also
* set the create date if there is a setter for it when we create a new record.
*
* @param mixed $post
* @param ModelCriteria $query
* @param string $modelClass
* @param string $pkFieldName
*
* @return object
*/
protected function getWorkingModel($post, $query, $modelClass, $pkFieldName)
{
$newRecord = $this->isNewRecord($post, $pkFieldName);
$model = $newRecord ? new $modelClass() : $query->findPk($post->{$pkFieldName});
if ($newRecord && method_exists($model, 'setCreateDate')) {
$model->setCreateDate(new DateTime());
}
return $model;
}