Php Laravel4中雄辩的调用:处理多个表上的单列

Php Laravel4中雄辩的调用:处理多个表上的单列,php,mysql,laravel,laravel-4,eloquent,Php,Mysql,Laravel,Laravel 4,Eloquent,我又回到了另一个Laravel问题上,我似乎无法用我的程序化PHP解决这个问题,直接mysql\u查询背景。它基本上涉及多个表上的雄辩ORM 我有3个表(用户、用户配置文件和用户答案)。“用户”表仅保留用户的基本信息(自动递增的id、电子邮件、密码),而“用户配置文件”表包含更多的详细信息(图像url、国家、城市、性别等),并且属于用户模型。用户答案表是用户给出的答案列表,也属于用户模型 我想做的是从User_Profiles表中选择城市与登录用户所在城市相同的所有行,在数组中获取他们的用户

我又回到了另一个Laravel问题上,我似乎无法用我的程序化PHP解决这个问题,直接mysql\u查询背景。它基本上涉及多个表上的雄辩ORM


我有3个表(用户、用户配置文件和用户答案)。“用户”表仅保留用户的基本信息(自动递增的id、电子邮件、密码),而“用户配置文件”表包含更多的详细信息(图像url、国家、城市、性别等),并且属于用户模型。用户答案表是用户给出的答案列表,也属于用户模型


我想做的是从User_Profiles表中选择城市与登录用户所在城市相同的所有行,在数组中获取他们的用户id,然后将答案(来自User_answers表)与当前登录用户的答案进行比较。下面是我想要做的,但是使用普通的PHP和mysql_查询(仅供解释)。我为这糟糕的代码提前道歉。我只需要被指向正确的方向

<?php

$link = mysql_connect("localhost", "xxx", "xxx");
$db = mysql_select_db('testersize', $link);

$id = 2;
$sql = "SELECT city FROM user_profiles WHERE user_id = $id";
$query = mysql_query($sql, $link);

$row = mysql_fetch_row($query);

$city = $row[0];

echo $city . "</br>";

$sql = "SELECT user_id FROM user_profiles WHERE city = '$city'";
$matches = mysql_query($sql, $link);

//

while($row = mysql_fetch_row($matches)){
  $u_id = $row[0];
  $sql = "SELECT books, movies, music FROM user_answers WHERE user_id = $u_id";
  $query2 = mysql_query($sql, $link);
  $row2 = mysql_fetch_row($query2);
  echo "<h2>User Number: " . $u_id . "</h2>";
  echo "your favorite books:" . $row2[0] . "</br>";
  echo "your favorite movies:" . $row2[1] . "</br>";
  echo "your favorite music:" . $row2[2] . "</br>";
}
?>

因此,代码将按城市为您获取用户配置文件,然后循环浏览并将其放入数组中,我不确定您所说的“将答案与用户表匹配”是什么意思

$user_ids = User_Profiles::where('city','=',Auth::user()->city)->lists('user_id');
$favorites = User_Answers::whereIn('user_id',$user_ids)->get();
foreach($favorites as $favorite)
{
    echo $favorite->book;
    echo $favorite->music;
    echo $favorite->movie;
}
$user_ids = User_Profiles::where('city','=',Auth::user()->city)->lists('user_id');
$favorites = User_Answers::whereIn('user_id',$user_ids)->get();
foreach($favorites as $favorite)
{
    echo $favorite->book;
    echo $favorite->music;
    echo $favorite->movie;
}