在使用 Laravel Nova 时,如果日期字段始终提交 null
,可能是由于以下几个原因导致的:
Laravel Nova 是一个用于管理 Laravel 应用程序的后台仪表盘工具。它允许开发者通过简单的界面来管理数据库中的数据。
日期字段 在 Laravel 中通常使用 date
或 datetime
类型存储在数据库中。
config/app.php
中检查 timezone
设置。config/app.php
中检查 timezone
设置。null
。null
。null
。null
。假设我们有一个 Post
模型和一个对应的 Nova 资源 PostResource
。
数据库迁移文件:
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->date('publish_date');
$table->timestamps();
});
Nova 资源文件 (app/Nova/Post.php
):
namespace App\Nova;
use Laravel\Nova\Fields\Date;
use Laravel\Nova\Resource;
class Post extends Resource
{
public function fields(Request $request)
{
return [
Text::make('Title'),
Date::make('Publish Date', 'publish_date')
->rules('required'),
];
}
}
控制器文件 (app/Http/Controllers/PostController.php
):
namespace App\Http\Controllers;
use App\Models\Post;
use Illuminate\Http\Request;
class PostController extends Controller
{
public function store(Request $request)
{
$validatedData = $request->validate([
'publish_date' => 'required|date',
]);
Post::create($validatedData);
return redirect()->route('posts.index');
}
}
通过以上步骤,可以排查并解决 Laravel Nova 中日期字段提交 null
的问题。如果问题依然存在,建议进一步检查日志文件或使用调试工具来定位具体原因。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云