У меня есть 2 аккаунта, бизнес \ пользователь компании и частный пользователь, они делят некоторые атрибуты как электронную почту, пароль, имя. но есть необходимость хранить больше вещей о бизнесе. поэтому у меня есть две таблицы.Laravel 5.2 -> заполнить таблицы при регистрации
основная таблица: пользователи Компания: компания подключена через внешний ключ (user_ID). До сих пор я ничего не мог написать в таблице компании:/ любой совет?
ошибки я получаю
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'homestead.companies' doesn't exist (SQL: insert into `companies` (`ICO`, `updated_at`, `created_at`) values (15, 2016-01-30 18:38:28, 2016-01-30 18:38:28))
DonT understant почему он не может найти таблицу "компании"
бизнес-модель:
class Company extends Model
{
protected $fillable = ['ICO'];
public function user() {
return $this->belongsTo('App\User');
}}
модель пользователя:
class User extends Authenticatable {
protected $fillable = [
'firstname','middlename','lastname', 'email', 'password','usertype',];
protected $hidden = ['password', 'remember_token',];
public function company(){
return $this->hasMany('App\Company');
}
}
миграционный компания
public function up() {
Schema::create('companyuser', function (Blueprint $table) {
$table->integer('user_id')->unsigned()->nullable();
$table->integer('ICO');
$table->timestamps();
$table->foreign('user_id')->references('id')->on('users')
->onDelete('cascade');
});
}
AuthController.php
$user = User::create([
'firstname' => $data['firstname'],
'lastname' => $data['lastname'],
'middlename' => $data['middlename'],
'usertype' => $data['usertype'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);
//no problem with this upper part but with this part on bottom.
$company = Company::create([
'ICO' => $data[ICO],
]);
какую ошибку вы получаете? дайте нам больше информации –
им жаль, отредактированный оригинальный пост. – miiisapiiisa
Вы назвали компанию companyuser не компаниями. Проверьте имя phpmyadmin для имени таблицы. Довольно очевидный материал –