for this migration as:
Schema::create('user_tickets', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->string('subject');
$table->integer('ticket_number')->unique();
$table->tinyInteger('priority')->default(2);
$table->tinyInteger('section');
$table->boolean('solved')->default(false);
$table->timestamps();
});
and
Schema::create('user_tickets_answers', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->integer('ticket_id')->unsigned();
$table->foreign('ticket_id')->references('id')->on('user_tickets')->onDelete('cascade');
$table->text('reply',200);
$table->timestamps();
});
laravel create this foreign keys for me
user_tickets_answers_user_id_foreign
user_tickets_answers_ticket_id_foreign
on user_tickets_answers
table, now when i try to get user_tickets
data with user_tickets_answers
relation such as:
$tickets = UserTickets::with('reply')->get();
i get this error:
Base table or view not found: 1146 Table 'diabet.user_ticket_answers' doesn't exist (SQL: select * from `user_ticket_answers` where `user_ticket_answers`.`ticket_id` in (1))
how can i define this foreign keys on self models?
UserTickets :
class UserTickets extends Model
{
protected $guarded = ['id'];
public function reply()
{
return $this->hasMany(UserTicketAnswers::class, 'ticket_id');
}
}
UserTicketAnswers :
class UserTicketAnswers extends Model
{
protected $guarded = ['id'];
public function ticket()
{
return $this->belongsTo(UserTickets::class);
}
}