Json data
[
{
"id":2,
"firstname":"abc",
"lastname":"def",
"email":"abc@some.ac.uk",
"role":1,
"university":1,
"school_dept":5,
"year":2,
"photo":"URL",
"bio":"ObxBJIDO6IfOU0DIw8a5",
"search_status":"available",
"created_at":null,
"updated_at":null,
"languages":[
{
"id":3,
"language":"Spanish",
"pivot":{
"user_id":2,
"language_id":3,
"type":"native"
}
},
{
"id":4,
"language":"Greek",
"pivot":{
"user_id":2,
"language_id":4,
"type":"learn"
}
}
]
}
]
I would like to get the language_id of the loggedin user. if user logged in as id = 2(auth::user()->id).
Then for above data I would like to receive output as:
$learn = 4(language_id)
$native= 3(language_id)
I tried to do it like:
$learn = User::with('languages')->where([['languages.pivot.user_id',Auth::user()->id],['languages.pivot.type','learn']])
$teach = User::with('languages')->where([['languages.pivot.user_id',Auth::user()->id],['languages.pivot.type','native']])
the relationship between user and languages is many to many with extra field called type(native or learn) as pivot.
Table format for User, Language_User, Language
User_table
id
name
....
Language_User
id
user_id
language_id
type('learn','native')
Language_table
id
language
from Newest questions tagged laravel-5 - Stack Overflow http://ift.tt/2klwm9X
via IFTTT
Aucun commentaire:
Enregistrer un commentaire