咨询选择laravel与雄辩

时间:2018-01-16 00:53:13

标签: php mysql laravel eloquent

我从Laravel开始,我有两个简单的实体,即用户和备注,其相关内容如下:

用户

public function notes()
{
  return $this->hasMany('App\Note');
}

备注

public function user()
{
  return $this->belongsTo('App\User');
}

现在在我的控制器笔记中有说服力,我想返回我所拥有的所有笔记,但是我没有收到用户的ID,而是想要返回这个名称,我必须在两个实体的关系,或者我只是在我的查询中调整一些东西,目前我正在使用它:

$notes = Note::orderBy('id', 'desc')->get();

2 个答案:

答案 0 :(得分:1)

您可以检索用户名,如下所示:

/*move the step dots to the far right*/
.stepDots{
  position:fixed;
  right:0;
  top:40%;
  display: block;
}

/*align/style the text inside a circle*/
.stepDots li{
  vertical-align: middle;
  display: block;
  margin:5px auto;
  text-align:center;
  background-color:rgba(0,0,0,.5);
  color:#fff;
  height: 30px;
  width: 30px;
  border-radius:50%;
  transition:all 200ms ease-in-out;
}

答案 1 :(得分:0)

如果您想使用' user_name'传递整个$ note数据。首先定义自己的类。这样的事情。

class my_class{
    public $data;
    public $user_name;
}

您可以在获得$ note变量后运行循环,并将数据保存到新数组中,如此代码所示。

$notes = Note::orderBy('id', 'desc')->get();
//define an empty Array
$data_arry=array();

foreach($notes as $note)
{
    $custom=new my_class();
    $name=User::where('u_user_id', $note->n_user_id)->limit(1)->get(); 
    //First 'u_user_id' for column name in user table second 'n_user_id' for column name in note table 
    $user_name=$name[0]->u_user_name; // 'u_user_name' for column name of stored the name in user table

    //pushing data to the object
    $custom->data=$note;
    $custom->user_name=$user_name;

    $data_arry[]=$custom;
}

现在您可以使用新阵列管理数据。