Use getDates() for type check

Fixes #63
This commit is contained in:
Barry vd. Heuvel
2014-02-21 12:00:54 +01:00
parent 512574de9a
commit 7b47af171d
+32 -29
View File
@@ -203,36 +203,39 @@ class ModelsCommand extends Command {
if($columns){ if($columns){
foreach ($columns as $column) { foreach ($columns as $column) {
$name = $column->getName(); $name = $column->getName();
$type = $column->getType()->getName(); if(in_array($name, $model->getDates())){
$type = '\Carbon\Carbon';
switch($type){ }else{
case 'string': $type = $column->getType()->getName();
case 'text': switch($type){
case 'date': case 'string':
case 'time': case 'text':
case 'guid': case 'date':
$type = 'string'; case 'time':
break; case 'guid':
case 'integer': case 'datetimetz':
case 'bigint': case 'datetime':
case 'smallint': $type = 'string';
$type = 'integer'; break;
break; case 'integer':
case 'decimal': case 'bigint':
case 'float': case 'smallint':
$type = 'float'; $type = 'integer';
break; break;
case 'boolean': case 'decimal':
$type = 'boolean'; case 'float':
break; $type = 'float';
case 'datetimetz': //String or DateTime, depending on $dates break;
case 'datetime': case 'boolean':
$type = '\Carbon\Carbon'; $type = 'boolean';
break; break;
default: default:
$type = 'mixed'; $type = 'mixed';
break; break;
}
} }
$this->setProperty($name, $type, true, true); $this->setProperty($name, $type, true, true);
$this->setMethod(Str::camel("where_".$name), '\\'.get_class($model), array('$value')); $this->setMethod(Str::camel("where_".$name), '\\'.get_class($model), array('$value'));
} }