извлечение данных из трех таблиц в laravel - PullRequest
0 голосов
/ 27 сентября 2018

Это структура таблицы, которая в основном состоит из трех таблиц, а именно: расходы, категории и солнечные категории

table expenses
(id,category_id,sub_category_id,date,description,amount)
table categories
(id,category_name)
table subcategories
(id,sub_category_name,category_id)

Это необходимый запрос SQL

select expense.date, expense.description, expense.amount, 
category.category_name, subcategory.sub_category_name
from expenses as expense,categories as category,subcategories as subcategory
where expense.category_id=category.id and
    category.id=subcategory.category_id);

Этофункция в модели расходов, с помощью которой я передаю category_id. Тот же самый запрос, упомянутый выше, написан на laravel, но я не могу получить данные.

function fetchExpenseData($categoryId)
{
    $expense = Expense::select("expenses.*","categories.category_name as 
    Categoryname","subcategories.Sub_category_name")
        ->join("categories","categories.id","=","expenses.category_id");
        ->join("subcategories",function($join)
        {
            $join>on("subcategories.category_id","=","expenses.category_id")
                ->on("suncategories.id","=","expenses.sub_category_id")
        })->get();
    return $expenses;
}

$ возвращенные расходы будут напечатаны в blade.php.Могу ли я узнать в чем ошибка

заранее спасибо

1 Ответ

0 голосов
/ 27 сентября 2018
Hye there , 
You need to add eloquent model for retrieving data fromenter code here three tables
Like 
I have School Table , Student Table , Teacher Table
School is relating with both Student and Teacher then we will add relationship
In School Model 
`
public function getStudent(){
  return $this->hasMany('student_id' , App\Student);
}

public function getTeachers(){
  return $this->hasMany('teacher_id' , App\Teacher);
}

In Student table
public function getSchool(){
 return $this->hasOne('school_id' , App\School);
}
`
now call data from student
`
$students = Student::with('getSchool.getTeachers')->get()

This Demonstration for  what I have get from your Question
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...