本文整理汇总了PHP中Illuminate\Database\Eloquent\Relations\Relation::getTable方法的典型用法代码示例。如果您正苦于以下问题:PHP Relation::getTable方法的具体用法?PHP Relation::getTable怎么用?PHP Relation::getTable使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Illuminate\Database\Eloquent\Relations\Relation
的用法示例。
在下文中一共展示了Relation::getTable方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: insertBelongsToMany
/**
* Insert a belongsToMany foreign key relationship.
*
* @param string recordName
* @param Relation $relation
* @param int $columnValue
* @return void
*/
protected function insertBelongsToMany($recordName, Relation $relation, $columnValue)
{
$joinTable = $relation->getTable();
$this->tables[] = $joinTable;
$relatedRecords = explode(',', str_replace(', ', ',', $columnValue));
foreach ($relatedRecords as $relatedRecord) {
list($fields, $values) = $this->buildBelongsToManyRecord($recordName, $relation, $relatedRecord);
$placeholders = rtrim(str_repeat('?, ', count($values)), ', ');
$sql = "INSERT INTO {$joinTable} ({$fields}) VALUES ({$placeholders})";
$sth = $this->db->prepare($sql);
$sth->execute($values);
}
}
示例2: joinIntermediate
/**
* Join pivot or 'through' table.
*
* @param \Illuminate\Database\Eloquent\Model $parent
* @param \Illuminate\Database\Eloquent\Relations\Relation $relation
* @param string $type
* @return void
*/
protected function joinIntermediate(Model $parent, Relation $relation, $type)
{
if ($relation instanceof BelongsToMany) {
$table = $relation->getTable();
$fk = $relation->getForeignKey();
} else {
$table = $relation->getParent()->getTable();
$fk = $table . '.' . $parent->getForeignKey();
}
$pk = $parent->getQualifiedKeyName();
if (!$this->alreadyJoined($join = (new Join($type, $table))->on($fk, '=', $pk))) {
$this->query->joins[] = $join;
}
}