我对laravel相当新,我在我的项目中实现了一个系统,以便用户可以向对方发送“dm” . 但现在在创建视图中有复选框,您可以在其中检查要向其发送dm的用户 . 我在我的控制器的创建函数中得到了这样的用户:
$users = User::where('id', '!=', Auth::id())->get();
我的目标是用户可以在其他视图中单击其他用户名,并选择“send dm”或其他选项 . 但我不知道如何将该ID传递给我的控制器中的create函数 . 我应该隐藏复选框并选择传递的ID吗?或者我的游戏计划应该在这里?
这是我在控制器中的创建功能
public function create($userid)
{
$users = User::where('id', '=', $userid);
return view('messenger.create', compact('users'));
}
这些是我的路线:
Route::group(['prefix' => 'messages'], function () {
Route::get('/', ['as' => 'messages', 'uses' => 'MessagesController@index']);
Route::get('create/{userid}', ['as' => 'messages.create', 'uses' => 'MessagesController@create']);
Route::post('/', ['as' => 'messages.store', 'uses' => 'MessagesController@store']);
Route::get('{id}', ['as' => 'messages.show', 'uses' => 'MessagesController@show']);
Route::put('{id}', ['as' => 'messages.update', 'uses' => 'MessagesController@update']);
});
问题是我不知道如何在我的create函数中填充$ userid . 但我不确定这是正确的方法,我想我可能在这里完全错误的道路
可以真正使用所有的帮助
提前致谢!
2 回答
如果你想使用链接并发送一个用户dm这里是一种方法 . 您需要一个dm视图并与用户一起查看 . 这是用户:
您将user_id作为route参数发送,该参数包含您要向其发送消息的用户的ID($ user-> id) . 这是路线:
您可以在控制器中的create methond中获取路径参数user_id,如下所示:
试试这个 :
你的路线:
要使用用户信息加载表单:
您可以在动作属性中的URL上传递ID,例如:
创建DM的方法:
There is another solution, you can pass on with a hidden input