laravel app中用户配置文件中的隐藏数据

时间:2017-09-20 14:32:54

标签: php laravel

我正在使用Laravel,我想构建应用程序。当您想要查看其他用户信息时,您必须询问他是否可以看到。如果他点击是你可以,如果没有 - 不。我现在有这个:

用户模型:

public function SharedDatas()
{
    return $this->hasMany('App\Models\SharedData');
}

public function getUserById($id)
{
    $user = User::with('user_data','SharedDatas')->where('id', $id)->first();

    return $user;
} 

SharedData controller:

public function checkIfShared($request)
    {
        $shared = SharedData::where('user_id', $request['user_id'])->where('shared_to', $request['user_to_share_id'])->first();

        return $shared;
    }

    public function shareData($request) 
    {
        $SharedData = new SharedData;

        $SharedData->user_id = $request['user_id'];
        $SharedData->shared_to = $request['user_to_share_id'];

        $SharedData->save();    

        $SharedData = new SharedData;

        $SharedData->user_id = $request['user_to_share_id'];
        $SharedData->shared_to = $request['user_id']; 

        $SharedData->save();    
    }

但如何在刀片中显示或隐藏数据? View应该知道用户ID和要共享的另一个用户ID。现在它只适用于id为1和2的用户,当id为3时,它不起作用。我怎么能达到这个目标?

1 个答案:

答案 0 :(得分:0)

隐藏这些数据是一个坏主意!

做这些工作的最好方法是使用javascript。使用javascript,您可以动态地向用户发送数据。

当然你可以用php做到这一点。为用户消息创建一个表。每当授予访问权限的用户都应收到消息。所以在db中保存消息。在站点中放置消息框的链接并在那里显示用户消息。在邮件中放置另一个用户数据或(更好)链接到该数据。

相关问题