从选项列表中将当前管理员设置为默认作者
Set the current admin as the default author from the list of options
我正在为 Laravel 应用程序创建一个博客,其中只有管理员可以 post 向博客添加新 articles/posts。在 post 中,我为管理员选择了 post 的作者,但是我正在尝试设置默认选择的作者是创建新 [=23= 时的当前管理员] 而编辑页面从数据库中检索作者并将其设置为默认值。
在控制器中,我调用了所有管理员在 blade 中列出它们
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
$authors = Admin::all();
$categories = Category::all();
$tags = Tag::all();
return view('posts.create', compact('categories', 'tags', 'authors'));
}
我在 blade 中设置了一个条件,如果 author_id 未设置,则让当前登录的管理员成为默认选择的作者。
<select name="author" id="author" data-placeholder="Choose an Author" class="form-select">
@foreach($authors as $author)
<option value="{{$author->id}}"
@if (!isset($post->author_id))
{{ auth()->guard('admin')->user()->id ? 'selected' : '' }}
@elseif ((isset($post->author_id) && $author->id == $post->author_id))
{{ 'selected' }}
@endif>{{ $author->name }}</option>
@endforeach
</select>
以上代码将selected添加到所有选项中,并调用options中的最后一个。
您需要检查 Auth ID
是否等于 Select ID
<select name="author" id="author" data-placeholder="Choose an Author" class="form-select">
@foreach($authors as $author)
<option value="{{$author->id}}"
@if (!isset($post->author_id))
@if(auth()->guard('admin')->user()->id=={{$author->id}})
Selected
@endif
@elseif ((isset($post->author_id) && $author->id == $post->author_id))
{{ 'selected' }}
@endif>{{ $author->name }}</option>
@endforeach
</select>
或者你可以这样做
<select name="author" id="author" data-placeholder="Choose an Author" class="form-select">
@foreach($authors as $author)
<option value="{{$author->id}}"
@if (!isset($post->author_id))
{{ auth()->guard('admin')->user()->id == {{$author->id}} ? 'selected' : '' }}
@elseif ((isset($post->author_id) && $author->id == $post->author_id))
{{ 'selected' }}
@endif>{{ $author->name }}</option>
@endforeach
</select>
我正在为 Laravel 应用程序创建一个博客,其中只有管理员可以 post 向博客添加新 articles/posts。在 post 中,我为管理员选择了 post 的作者,但是我正在尝试设置默认选择的作者是创建新 [=23= 时的当前管理员] 而编辑页面从数据库中检索作者并将其设置为默认值。
在控制器中,我调用了所有管理员在 blade 中列出它们
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
$authors = Admin::all();
$categories = Category::all();
$tags = Tag::all();
return view('posts.create', compact('categories', 'tags', 'authors'));
}
我在 blade 中设置了一个条件,如果 author_id 未设置,则让当前登录的管理员成为默认选择的作者。
<select name="author" id="author" data-placeholder="Choose an Author" class="form-select">
@foreach($authors as $author)
<option value="{{$author->id}}"
@if (!isset($post->author_id))
{{ auth()->guard('admin')->user()->id ? 'selected' : '' }}
@elseif ((isset($post->author_id) && $author->id == $post->author_id))
{{ 'selected' }}
@endif>{{ $author->name }}</option>
@endforeach
</select>
以上代码将selected添加到所有选项中,并调用options中的最后一个。
您需要检查 Auth ID
是否等于 Select ID
<select name="author" id="author" data-placeholder="Choose an Author" class="form-select">
@foreach($authors as $author)
<option value="{{$author->id}}"
@if (!isset($post->author_id))
@if(auth()->guard('admin')->user()->id=={{$author->id}})
Selected
@endif
@elseif ((isset($post->author_id) && $author->id == $post->author_id))
{{ 'selected' }}
@endif>{{ $author->name }}</option>
@endforeach
</select>
或者你可以这样做
<select name="author" id="author" data-placeholder="Choose an Author" class="form-select">
@foreach($authors as $author)
<option value="{{$author->id}}"
@if (!isset($post->author_id))
{{ auth()->guard('admin')->user()->id == {{$author->id}} ? 'selected' : '' }}
@elseif ((isset($post->author_id) && $author->id == $post->author_id))
{{ 'selected' }}
@endif>{{ $author->name }}</option>
@endforeach
</select>