Получить специфицированное значение c в таблице соединения три по laravel красноречивой модели - PullRequest
1 голос
/ 13 апреля 2020

У меня есть 3 таблицы

Mail_Settings_Line_types table
 id
 mail_line_type

, где mail_line_type может иметь значения как "тело", "тема", "приветствие"

Mail_Settings_Details table
  id
  mail_line
  mail_line_type_id
  mail_id

, где mail_line может иметь «Дорогой {}}» , который будет связан с «приветствием» выше

Mail_Settings table
 id
 mail_type

mail_type с именем имеют «Новое письмо 1», «Новое электронная почта 2 " et c

МОИ МОДЕЛИ:

MailSetting

public function mail_setting_details(){
        return $this->hasMany('App\MailSettingDetail','MailSettingsTypeID','id' );
    }

MailSettingDetail

protected $fillable = [
        'MailSettingsLineTypeID','MailSettingsTypeID','mail_line'

   public function mail_setting_line_type(){
        return $this->hasOne('App\MailSettingLineType','id','MailSettingsLineTypeID'    );
    }

    public function mail_setting(){
        return $this->hasOne('App\MailSetting','id','MailSettingsTypeID'    );
    }

MailSettingLineType

'mail_line_type'

public function mail_setting_details(){
    return $this->hasMany('App\MailSettingDetail','MailSettingsLineTypeID','id' );
}

В моем контроллере я звоню, чтобы получить определенный почтовый шаблон:

$mail_setting = MailSetting::where('mail_type', 'New Email 2')->first();

Я хочу получить значение для Mail_Settings_Details.mail_line, где Mail_Settings_Line_types.mail_line_type - это «subject», или «body» и т. д. c

Пример вывода, который я хочу, это «Это тестовый субъект», если я хочу получить «subject».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...