|
@@ -79,7 +79,7 @@ class Table {
|
|
|
* @param string $name
|
|
|
* @return Fluent
|
|
|
*/
|
|
|
- public function unique($columns, $name)
|
|
|
+ public function unique($columns, $name = null)
|
|
|
{
|
|
|
return $this->key(__FUNCTION__, $columns, $name);
|
|
|
}
|
|
@@ -91,7 +91,7 @@ class Table {
|
|
|
* @param string $name
|
|
|
* @return Fluent
|
|
|
*/
|
|
|
- public function fulltext($columns, $name)
|
|
|
+ public function fulltext($columns, $name = null)
|
|
|
{
|
|
|
return $this->key(__FUNCTION__, $columns, $name);
|
|
|
}
|
|
@@ -103,7 +103,7 @@ class Table {
|
|
|
* @param string $name
|
|
|
* @return Fluent
|
|
|
*/
|
|
|
- public function index($columns, $name)
|
|
|
+ public function index($columns, $name = null)
|
|
|
{
|
|
|
return $this->key(__FUNCTION__, $columns, $name);
|
|
|
}
|
|
@@ -118,9 +118,17 @@ class Table {
|
|
|
*/
|
|
|
public function key($type, $columns, $name)
|
|
|
{
|
|
|
- $parameters = array('name' => $name, 'columns' => (array) $columns);
|
|
|
+ $columns = (array) $columns;
|
|
|
|
|
|
- return $this->command($type, $parameters);
|
|
|
+ // If no index name was specified, we will concatenate the columns and
|
|
|
+ // append the index type to the name to generate a unique name for
|
|
|
+ // the index that can be used when dropping indexes.
|
|
|
+ if (is_null($name))
|
|
|
+ {
|
|
|
+ $name = implode('_', $columns).'_'.$type;
|
|
|
+ }
|
|
|
+
|
|
|
+ return $this->command($type, compact('name', 'columns'));
|
|
|
}
|
|
|
|
|
|
/**
|