首页 > 解决方案 > Laravel6+ 无需迁移即可动态创建模型

问题描述

我不知道是否可以在不迁移的情况下创建 laravel 模型

我正在创建一个这样的动态数据库:

private function createTransactionTable($data) {
        $str = $data->name;
        $name = str_replace(' ', '_', trim($str));
        Schema::connection('mysql')->create($name.'_transaction', function($table) {
            $table->increments('id');
            $table->timestamps();
        });
    }
  1. 我怎样才能创建相关的模型?
  2. 如果不可能,我如何将单个模型用于多个表?

标签: phplaravellaravel-6

解决方案


很高兴见到你。
首先,您必须在 Person 模型中创建关系

class Person extends Model
{
    protected $fillable = ['firstname', 'lastname'];

    public function employee()
    {
        return $this->hasMany('App\Employee');
    }
}

之后,在您的控制器中,您可以执行以下操作:

$person = Person::create($personData);
$person->employee()->create($employeeData);

此致


推荐阅读