键突出显示
>数据库迁移
首先,我们定义数据库架构。 一个具有五个列(ID,标题,描述,Create_at,Updated_at)的单个表。 Laravel的迁移简化了数据库更新。 迁移文件看起来像这样:
>执行迁移,<code class="language-php"><?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateTodoTable extends Migration { public function up() { Schema::create('todos', function (Blueprint $table) { $table->increments('id'); $table->string('title', 20); $table->text('description'); $table->timestamps(); }); } public function down() { Schema::dropIfExists('todos'); } }</code>倒转。
>
up()
down()
模型
Laravel的MVC体系结构需要一个用于数据库交互的模型。 我们的简单表需要一个直接的模型:
laravel会自动将链接到
>表。雄辩的Laravel的ORM促进了数据库对象操纵。<code class="language-php"><?php namespace App\Models; use Illuminate\Database\Eloquent\Model; class Todo extends Model { protected $fillable = ['title', 'description']; public $timestamps = true; }</code>自动更新
和Todo
。
todos
$timestamps = true
控制器created_at
updated_at
检索所有条目。
检索特定的条目。
使用请求验证。
<code class="language-php"><?php namespace App\Http\Controllers; use App\Models\Todo; use Illuminate\Http\Request; class TodoController extends Controller { public function list() { $todos = Todo::all(); return view('list', compact('todos')); } public function view($id) { $todo = Todo::find($id); return view('view', compact('todo')); } public function delete($id) { $todo = Todo::find($id); $todo->delete(); return view('deleted'); } public function new() { return view('add'); } public function add(Request $request) { $validatedData = $request->validate([ 'title' => 'required|max:20', 'description' => 'required', ]); Todo::create($validatedData); return view('success'); } }</code>>
视图(示例:list)Todo::all()
action_add()
>
视图:
结论list
<code class="language-blade"><h2>Todo List</h2> <p>{{ link_to_route('todo.new', 'Add new todo') }}</p> <ul> @foreach ($todos as $todo) <li>{{ link_to_route('todo.view', $todo->title, [$todo->id]) }} - {{ link_to_route('todo.delete', 'Delete', [$todo->id]) }}</li> @endforeach </ul></code>构建此简单的应用程序表明了Laravel的易用性和代码可读性。 该框架符合其“干净,经典”的主张。
(注意:提供的代码段是简化的示例,可能需要调整功能齐全的应用程序。在生产环境中需要进行错误处理和更健壮的功能。
以上是Laravel:真的很干净吗?的详细内容。更多信息请关注PHP中文网其他相关文章!