我想獲取包含所有數(shù)據(jù)的學(xué)生文件。我的表格(我總結(jié)了我需要的表格。): students - id - name student_files - id - student_id - type_file_id - file_url type_files - id - name型號(hào): // ... class Student extends Authenticatable{ // ... public function files() { return $this->hasMany('App\StudentFiles'); } // ...控制器: // ... class Student extends Authenticatable{ public function getFiles(Request $request) { $user = Student::Find($request->user()->id)->load('files'); } // ...我試過類似的東西......不起作用。 public function files() { return $this->hasMany('App\StudentFiles')->hasOne('App\TypeFiles'); }請(qǐng)求結(jié)果:// ... "files": [ { "id": 1, "student_id": 1, "type_file_id": 1, "file_url": "example.jpg", } ]// ...我想要的結(jié)果 // ... "files": [ { "id": 1, "student_id": 1, "type_file_id": 1, "name": "Profile", "file_url": "example.jpg", } ] // ...我已經(jīng)嘗試了多種方法,但無法解決我的問題。
1 回答

aluckdog
TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超7個(gè)贊
您可以將typeFile關(guān)系添加到 StudentFile:
class StudentFiles extends Model {
public function typeFile()
{
return $this->hasOne('App\TypeFile', 'type_file_id');
}
}
然后使用急切加載訪問它:
$user = Student::with('files', 'files.typeFile')->find($request->user()->id);
$typeFileName = $user->files->typeFile->name;
- 1 回答
- 0 關(guān)注
- 244 瀏覽
添加回答
舉報(bào)
0/150
提交
取消