mysql - 最爱笑话的餐 table 星座

标签 mysql laravel-4 eloquent

我正在空闲时间开发一个小型网络应用程序,现在我想要有用户喜欢的笑话。

我的 table 是:

----------------
| jokes        |
----------------
| id
| author_id
| content

----------------
| favorites    |
----------------
| id
| joke_id
| user_id

(当然还有更多的表,例如用户表,但这不是必需的)

我现在不知道如何在模型中建立关系。 我的目标是检索登录用户喜欢的所有笑话,例如:

$favorites = Joke::wherePivot('user_id', Auth::user()->id)->get();

这样我就可以像笑话一样访问属性:

$jokes = Joke::all();

在 Blade 模板引擎中

@foreach($jokes as $joke)
  {{ $joke->content }}
@enndforeach

有什么最佳实践吗?我正在运行 Laravel 框架版本 4.2.17。

最佳答案

用mysql查询就可以得到 假设 userid =u0001

SELECT j.id,j.author_id,j.Content,f.user_id
FROM jokes j 
JOIN favorites f 
ON j.id=f.jokeid
WHERE f.user_id='u0001'

关于mysql - 最爱笑话的餐 table 星座,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29544874/

相关文章:

Mysql 查询 inverse IN 或从数组中搜索一个项目

sql - 您会为用户名和密码使用一个或两个表吗?

jquery - BlueImp 文件上传 "Error: Method Not Allowed"- Laravel 4 路由问题

php - Laravel 5.1 中的空 where 子句更喜欢 Eloquent 方法

php - 我想返回一个用户,其中包含他们推荐的所有人员的列表

php - Laravel 过滤所有列中的值

mysql - 如何在 Laravel 中使用 count() 对特定用户进行选择?

android - 使用通用图像加载器和 JSON 而不是 Constant Class

php - 使用 Laravel 4 中的布局在不同 View 的标题中加载 CSS

php - while循环内foreach循环问题