Files
ai-web/resources/views/admin/guides/form.blade.php

66 lines
4.2 KiB
PHP
Raw Normal View History

2026-02-11 17:28:36 +08:00
@extends('layouts.admin')
@section('title', $item->exists ? '编辑教程' : '新建教程')
@section('content')
<div class="card">
<div class="card-header d-flex justify-content-between align-items-center">
<h3 class="card-title mb-0">{{ $item->exists ? '编辑教程' : '新建教程' }}</h3>
@if($item->exists)
<form method="post" action="{{ route('admin.guides.publish', $item) }}">@csrf<button class="btn btn-sm btn-success" type="submit">发布</button></form>
@endif
</div>
<div class="card-body">
<form method="post" action="{{ $submitRoute }}" class="row g-3">
@csrf
@if($method !== 'POST') @method($method) @endif
<div class="col-md-8"><label class="form-label">标题</label><input class="form-control" name="title" value="{{ old('title', $item->title) }}" required></div>
<div class="col-md-4"><label class="form-label">Slug</label><input class="form-control" name="slug" value="{{ old('slug', $item->slug) }}" required></div>
<div class="col-md-4">
<label class="form-label">分类</label>
<select class="form-select" name="category_id">
<option value="">未分类</option>
@foreach($categories as $category)
<option value="{{ $category->id }}" @selected((string) old('category_id', $item->category_id) === (string) $category->id)>{{ $category->name }}</option>
@endforeach
</select>
</div>
<div class="col-md-4"><label class="form-label">难度</label><input class="form-control" name="difficulty" value="{{ old('difficulty', $item->difficulty ?: 'beginner') }}"></div>
<div class="col-md-4">
<label class="form-label">状态</label>
<select class="form-select" name="status">
@foreach($statusOptions as $status)
<option value="{{ $status->value }}" @selected(old('status', $item->status?->value) === $status->value)>{{ $status->value }}</option>
@endforeach
</select>
</div>
<div class="col-md-6"><label class="form-label">发布日期</label><input class="form-control" type="datetime-local" name="published_at" value="{{ old('published_at', optional($item->published_at)->format('Y-m-d\TH:i')) }}"></div>
<div class="col-12"><label class="form-label">摘要</label><textarea class="form-control" name="excerpt" rows="2" required>{{ old('excerpt', $item->excerpt) }}</textarea></div>
<div class="col-12">
<div class="d-flex justify-content-between align-items-center mb-1">
<label class="form-label mb-0">正文Markdown</label>
<div class="d-flex align-items-center gap-2">
<small class="text-muted">支持图片:`![alt](https://...)`</small>
<button class="btn btn-sm btn-outline-primary js-md-upload-btn" type="button" data-target="[name='body']">
<i class="bi bi-image me-1"></i>上传图片
</button>
</div>
</div>
<textarea class="form-control font-monospace js-md-editor" name="body" rows="14" required>{{ old('body', $item->body) }}</textarea>
</div>
<div class="col-md-6"><label class="form-label">SEO 标题</label><input class="form-control" name="seo_title" value="{{ old('seo_title', $item->seo_title) }}"></div>
<div class="col-md-6"><label class="form-label">SEO 描述</label><input class="form-control" name="seo_description" value="{{ old('seo_description', $item->seo_description) }}"></div>
<div class="col-md-6"><label class="form-label">H1</label><input class="form-control" name="h1" value="{{ old('h1', $item->h1) }}"></div>
<div class="col-md-6"><label class="form-label">Canonical</label><input class="form-control" name="canonical_url" value="{{ old('canonical_url', $item->canonical_url) }}"></div>
<div class="col-12"><button class="btn btn-primary" type="submit">保存</button></div>
</form>
</div>
</div>
@endsection