Skip to content

Commit feb6471

Browse files
Merge pull request #31 from josenicomaia/extensions-support
Column Definition Support
2 parents e7f438d + 218c3b0 commit feb6471

File tree

2 files changed

+27
-7
lines changed

2 files changed

+27
-7
lines changed

src/Relations/JoinColumn.php

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,11 @@ class JoinColumn
3636
*/
3737
protected $onDelete = null;
3838

39+
/**
40+
* @var string|null
41+
*/
42+
protected $columnDefinition = null;
43+
3944
/**
4045
* @var NamingStrategy
4146
*/
@@ -49,6 +54,7 @@ class JoinColumn
4954
* @param bool $nullable
5055
* @param bool $unique
5156
* @param string|null $onDelete
57+
* @param string|null $columnDefinition
5258
*/
5359
public function __construct(
5460
NamingStrategy $namingStrategy,
@@ -57,15 +63,17 @@ public function __construct(
5763
$referenceColumn = null,
5864
$nullable = true,
5965
$unique = false,
60-
$onDelete = null
66+
$onDelete = null,
67+
$columnDefinition = null
6168
) {
69+
$this->namingStrategy = $namingStrategy;
70+
$this->relation = $relation;
6271
$this->joinColumn = $joinColumn;
6372
$this->referenceColumn = $referenceColumn;
64-
$this->relation = $relation;
65-
$this->namingStrategy = $namingStrategy;
6673
$this->nullable = $nullable;
67-
$this->onDelete = $onDelete;
6874
$this->unique = $unique;
75+
$this->onDelete = $onDelete;
76+
$this->columnDefinition = $columnDefinition;
6977
}
7078

7179
/**
@@ -207,4 +215,12 @@ public function onDelete($onDelete = null)
207215

208216
return $this;
209217
}
218+
219+
/**
220+
* @return string|null
221+
*/
222+
public function getColumnDefinition()
223+
{
224+
return $this->columnDefinition;
225+
}
210226
}

src/Relations/Traits/ManyTo.php

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@ public function build()
2222
$column->getReferenceColumn(),
2323
$column->isNullable(),
2424
$column->isUnique(),
25-
$column->getOnDelete()
25+
$column->getOnDelete(),
26+
$column->getColumnDefinition()
2627
);
2728
}
2829

@@ -36,6 +37,7 @@ public function build()
3637
* @param bool|false $nullable
3738
* @param bool|false $unique
3839
* @param string|null $onDelete
40+
* @param string|null $columnDefinition
3941
*
4042
* @return $this
4143
*/
@@ -45,7 +47,8 @@ public function addJoinColumn(
4547
$referenceColumn = null,
4648
$nullable = false,
4749
$unique = false,
48-
$onDelete = null
50+
$onDelete = null,
51+
$columnDefinition = null
4952
) {
5053
$joinColumn = new JoinColumn(
5154
$this->getNamingStrategy(),
@@ -54,7 +57,8 @@ public function addJoinColumn(
5457
$referenceColumn,
5558
$nullable,
5659
$unique,
57-
$onDelete
60+
$onDelete,
61+
$columnDefinition
5862
);
5963

6064
$this->pushJoinColumn($joinColumn);

0 commit comments

Comments
 (0)