如何列出未经身份验证的用户(公共(public)页面)查找其姓名的数据?我还想知道是否可以在内部通过id转换用户名。
我有两个表,第一个公司和第二个人物,在我的代码中,我从 URL 中获取字符串“名称”,并在第一个表(公司)上进行搜索,如果是肯定的,我会将此名称发送到 View ,我需要列出该用户出现在个性表中的数据
我不知道我做错了什么,但是代码将 html 增加了三倍,并且没有返回我想要的方式。
我需要这样返回:
<div class="bg-danger"><br><br></div>
<div class="bg-primary"><br><br></div>
<div class="bg-success"><br><br></div>
<div class="bg-info"><br><br></div>
按照代码操作
路由器
Route::get('company/{name}', 'CompanyController@searchByName');
Controller
public function searchByName($name)
{
$company = Company::where('name', $name)->first();
return view('company.base.index', compact('company', 'name'));
}
查看
<!--- Lochlite: version 3.0.0 country Brazil, lang PT-BR, official site Gameloch Brasil © 2015 - 2019 Gameloch All Right Reserved. --->
<!doctype html>
<html xmlns:og="https://ogp.me/ns#" itemscope="" itemtype="https://schema.org/Corporation" class="no-js" lang="pt pt-BR_ALL" user-region="">
<head data-info="" itemscope="" itemtype="https://schema.org/Organization">
<meta charset="utf-8">
<meta content="origin" name="referrer">
<meta name="geo.country" content="BR">
<meta name="csrf-token" content="4rtTcBa4csPFlBtHECAmTw6MAh8D5y4ni0H5h49S">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
</head>
</body>
@foreach($company as $company)
<div class="{{ DB::table('personalities')->select('div_class_1')->where('name', '=', $name)->get() }}"><br><br></div>
<div class="{{ DB::table('personalities')->select('div_class_2')->where('name', '=', '$name')->get() }}"><br><br></div>
<div class="{{ DB::table('personalities')->select('div_class_3')->where('name', '=', '$name')->get() }}"><br><br></div>
<div class="{{ DB::table('personalities')->select('div_class_4')->where('name', '=', '$name')->get() }}"><br><br></div>
@endforeach
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
</body>
</html>
返回
<div class="[{"div_class_1":"bg-danger"}]"><br><br></div>
<div class="[]"><br><br></div>
<div class="[]"><br><br></div>
<div class="[]"><br><br></div>
<div class="[{"div_class_1":"bg-danger"}]"><br><br></div>
<div class="[]"><br><br></div>
<div class="[]"><br><br></div>
<div class="[]"><br><br></div>
<div class="[{"div_class_1":"bg-danger"}]"><br><br></div>
<div class="[]"><br><br></div>
<div class="[]"><br><br></div>
<div class="[]"><br><br></div>
<div class="[{"div_class_1":"bg-danger"}]"><br><br></div>
<div class="[]"><br><br></div>
<div class="[]"><br><br></div>
<div class="[]"><br><br></div>
最佳答案
您应该将 View 所需的内容传递到 View 中,包括对personalities
的查询:
public function searchByName($name)
{
$company = Company::where('name', $name)->firstOrFail();
$personality = DB::table('personalities')->where('name', $name)->first();
return view('company.base.index', compact('company', 'name', 'personality'));
}
查看:
<div class="{{ $personality->div_class_1 }}"><br><br></div>
<div class="{{ $personality->div_class_2 }}"><br><br></div>
<div class="{{ $personality->div_class_3 }}"><br><br></div>
<div class="{{ $personality->div_class_4 }}"><br><br></div>
不需要循环,因为没有什么可以迭代的。
关于php - 通过在 mysql 查询后返回空标签,html 大小增加了三倍 |如何解决 - laravel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58368641/