{"id":5991,"date":"2019-03-05T10:06:03","date_gmt":"2019-03-05T10:06:03","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=5991"},"modified":"2021-11-16T11:42:41","modified_gmt":"2021-11-16T11:42:41","slug":"todo-application-in-laravel","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/todo-application-in-laravel\/","title":{"rendered":"Todo Application in Laravel"},"content":{"rendered":"\n<p><strong>1.Create Project in Laravel<\/strong><\/p>\n\n\n\n<p>Composer create-project laravel\/laravel todolist<\/p>\n\n\n\n<p><strong>2.Create CRUD Controller<\/strong><\/p>\n\n\n\n<p>php artisan make:controller TodosController &#8211;resource<\/p>\n\n\n\n<p><strong>3.Route setup of CRUD Controller<\/strong><\/p>\n\n\n\n<p>routes\/web.php<\/p>\n\n\n\n<p><\/p>\n\n\n<p>[code language=&#8221;sql&#8221;]<br \/>\nRoute::get(&#8216;\/&#8217;,&#8217;TodosController@index&#8217;);<br \/>\nRoute::resource(&#8216;todo&#8217;, &#8216;TodosController&#8217;);<br \/>\n[\/code]<\/p>\n\n\n\n<p><strong>4.Create Database todolist<\/strong><\/p>\n\n\n\n<p>localhost\/phpmyadmin<\/p>\n\n\n\n<p>create database todolist<\/p>\n\n\n\n<p><strong>5.Create Model Todo<\/strong><\/p>\n\n\n\n<p>php artisan make:model Todo -m<\/p>\n\n\n\n<p><strong>6.Create Todo Table Structure<\/strong><\/p>\n\n\n\n<p>database\/migrations\/_create_todos_table.php<\/p>\n\n\n\n<p>database\/migrations\/_create_todos_table.php<\/p>\n\n\n<p>[code language=&#8221;sql&#8221;]<br \/>\npublic function up()<br \/>\n{<br \/>\n\tSchema::create(&#8216;todos&#8217;, function (Blueprint $table){<br \/>\n\t\t$table-&amp;amp;gt;increments(&#8216;id&#8217;);<br \/>\n\t\t$table-&amp;amp;gt;string(&#8216;text&#8217;);<br \/>\n\t\t$table-&amp;amp;gt;mediumText(&#8216;body&#8217;);<br \/>\n\t\t$table-&amp;amp;gt;string(&#8216;due&#8217;);<br \/>\n\t\t$table-&amp;amp;gt;timestamps();<br \/>\n\t});<br \/>\n}<br \/>\n[\/code]<\/p>\n\n\n\n<p><strong>7.Database Configuration<\/strong><\/p>\n\n\n\n<p>.env<\/p>\n\n\n<p>[code language=&#8221;sql&#8221;]<br \/>\nDB_CONNECTION=mysql<br \/>\nDB_HOST=127.0.0.1<br \/>\nDB_PORT=3306<br \/>\nDB_DATABASE=todolist<br \/>\nDB_USERNAME=root<br \/>\nDB_PASSWORD=<br \/>\n[\/code]<\/p>\n\n\n\n<p><strong>8.Configure Default String Length<\/strong><\/p>\n\n\n\n<p>app\/Providers\/AppServiceProvider.php<\/p>\n\n\n<p>[code language=&#8221;sql&#8221;]<br \/>\nuse Illuminate\\Support\\ServiceProvider;<br \/>\nuse Illuminate\\Support\\Facades\\Schema;<\/p>\n<p>public function boot()<br \/>\n{<br \/>\n\tSchema::defaultStringLength(191);<br \/>\n}<br \/>\n[\/code]<\/p>\n\n\n\n<p><strong>9.Migrate with Database<\/strong><\/p>\n\n\n\n<p>php artisan migrate<\/p>\n\n\n\n<p><strong>10.Data Insert By Command Line<\/strong><\/p>\n\n\n\n<p>php artisan tinker<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>[code language=&#8221;sql&#8221;]&amp;amp;lt;\/p&amp;amp;gt;&amp;amp;lt;p&amp;amp;gt;$todo = new App\\Todo();&amp;amp;lt;br&amp;amp;gt;       $todo-&amp;amp;gt;text=&#8217;Todo One&#8217;;&amp;amp;lt;br&amp;amp;gt;       $todo-&amp;amp;gt;body = &#8216;This is my first todo&#8217;;&amp;amp;lt;br&amp;amp;gt;       $todo-&amp;amp;gt;due = &#8216;Monday May 7&#8242;;&amp;amp;lt;br&amp;amp;gt;       $todo-&amp;amp;gt;save();&amp;amp;lt;\/p&amp;amp;gt;&amp;amp;lt;p&amp;amp;gt;$todo = new App\\Todo();&amp;amp;lt;br&amp;amp;gt;       $todo-&amp;amp;gt;text=&#8217;Todo Two&#8217;;&amp;amp;lt;br&amp;amp;gt;       $todo-&amp;amp;gt;body = &#8216;This is my second todo&#8217;;&amp;amp;lt;br&amp;amp;gt;       $todo-&amp;amp;gt;due = &#8216;Tuesday May 8&#8217;;&amp;amp;lt;br&amp;amp;gt;       $todo-&amp;amp;gt;save();&amp;amp;lt;\/p&amp;amp;gt;&amp;amp;lt;p&amp;amp;gt;[\/code]<\/p><\/blockquote>\n\n\n\n<p><strong>11.Select All Data from Command Line<\/strong><\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p> <br>[code language=&#8221;sql&#8221;] &amp;amp;lt;\/p&amp;amp;gt;&amp;amp;lt;p&amp;amp;gt;App\\Todo::all();&amp;amp;lt;\/p&amp;amp;gt;&amp;amp;lt;cite&amp;amp;gt; &amp;amp;lt;br&amp;amp;gt;[\/code] <\/p><\/blockquote>\n\n\n\n<p><strong>12.Select Specific Data from Command Line<\/strong><\/p>\n\n\n<p>[code language=&#8221;sql&#8221;]<br \/>\n&amp;amp;gt;&amp;amp;gt;&amp;amp;gt; App\\Todo::find(1);<br \/>\n[\/code]<\/p>\n\n\n\n<p><strong>13.Display All Data in index function<\/strong><\/p>\n\n\n\n<p>app\/Http\/Controllers\/TodosController.php<\/p>\n\n\n<p>[code language=&#8221;sql&#8221;]<br \/>\nuse Illuminate\\Http\\Request;<br \/>\nuse App\\Todo;<\/p>\n<p>class TodosController extends Controller<br \/>\n{<br \/>\n\tpublic function index()<br \/>\n\t{<br \/>\n\t\t\/\/ $todos = Todo::all();<br \/>\n\t\t$todos = Todo::orderBy(&#8216;created_at&#8217;, &#8216;desc&#8217;)-&amp;amp;gt;get();<br \/>\n\t\treturn view(&#8216;todos.index&#8217;)-&amp;amp;gt;with(&#8216;todos&#8217;, $todos);<br \/>\n\t}<br \/>\n}<\/p>\n<p>[\/code]<\/p>\n\n\n\n<p><strong>14.Create index.blade.php file for display index function <\/strong><\/p>\n\n\n\n<p>resources\/views\/todos\/index.blade.php<\/p>\n\n\n<p>[code language=&#8221;sql&#8221;]<br \/>\n@extends(&#8216;layouts.app&#8217;)<\/p>\n<p>@section(&#8216;content&#8217;)<br \/>\n&amp;amp;lt;h1&amp;amp;gt;Todos&amp;amp;lt;\/h1&amp;amp;gt;<br \/>\n@if(count($todos) &amp;amp;gt; 0)<br \/>\n\t@foreach($todos as $todo)<br \/>\n\t\t&amp;amp;lt;div class=&amp;amp;quot;card&amp;amp;quot;&amp;amp;gt;<br \/>\n\t\t\t&amp;amp;lt;h3&amp;amp;gt;&amp;amp;lt;a href=&amp;amp;quot;todo\/{{$todo-&amp;amp;gt;id}}&amp;amp;quot;&amp;amp;gt;{{$todo-&amp;amp;gt;text}}&amp;amp;lt;\/a&amp;amp;gt;&amp;amp;lt;\/h3&amp;amp;gt;<br \/>\n\t\t\t&amp;amp;lt;p class=&amp;amp;quot;text-danger&amp;amp;quot;&amp;amp;gt;{{$todo-&amp;amp;gt;due}}&amp;amp;lt;\/p&amp;amp;gt;<br \/>\n\t\t&amp;amp;lt;\/div&amp;amp;gt;<br \/>\n\t@endforeach<br \/>\n@endif<br \/>\n@endsection<br \/>\n[\/code]<\/p>\n\n\n\n<p><strong>15.create app.blade.php for include css and container<\/strong><\/p>\n\n\n\n<p>resources\/views\/layouts\/app.blade.php<\/p>\n\n\n<p>[code language=&#8221;sql&#8221;]<br \/>\n&amp;amp;lt;title&amp;amp;gt;TodoList&amp;amp;lt;\/title&amp;amp;gt;<br \/>\n&amp;amp;lt;link rel=&amp;amp;quot;stylesheet&amp;amp;quot; href=&amp;amp;quot;\/css\/app.css&amp;amp;quot;&amp;amp;gt;<\/p>\n<p>&amp;amp;lt;div class=&amp;amp;quot;container&amp;amp;quot;&amp;amp;gt;<br \/>\n\t@yield(&#8216;content&#8217;)<br \/>\n&amp;amp;lt;\/div&amp;amp;gt;<\/p>\n<p>&amp;amp;lt;footer id =&amp;amp;quot;footer&amp;amp;quot; class=&amp;amp;quot;footer&amp;amp;quot;&amp;amp;gt;<br \/>\n\t&amp;amp;lt;p&amp;amp;gt;copyright &amp;amp;amp;copy; 2017 TodoList&amp;amp;lt;\/p&amp;amp;gt;<br \/>\n&amp;amp;lt;\/footer&amp;amp;gt;<br \/>\n[\/code]<\/p>\n\n\n\n<p><strong>16.Display The Specific Data in show function<\/strong><\/p>\n\n\n\n<p>app\/Http\/Controllers\/TodosController.php<\/p>\n\n\n<p>[code language=&#8221;sql&#8221;]<br \/>\nuse Illuminate\\Http\\Request;<br \/>\nuse App\\Todo;<\/p>\n<p>class TodosController extends Controller<br \/>\n{<br \/>\n\tpublic function show($id)<br \/>\n\t{<br \/>\n\t\t $todos = Todo::find($id);<br \/>\n\t\treturn view(&#8216;todos.index&#8217;)-&amp;amp;gt;with(&#8216;todos&#8217;, $todos);<br \/>\n\t}<br \/>\n}<br \/>\n[\/code]<\/p>\n\n\n\n<p><strong>17.Create show.blade.php file for display show function <\/strong><\/p>\n\n\n\n<p>resources\/views\/todos\/show.blade.php<\/p>\n\n\n<p>[code language=&#8221;sql&#8221;]<br \/>\n@extends(&#8216;layouts.app&#8217;)<\/p>\n<p>@section(&#8216;content&#8217;)<br \/>\n&amp;amp;lt;a href=&amp;amp;quot;\/&amp;amp;quot; class=&amp;amp;quot;btn btn-default&amp;amp;quot;&amp;amp;gt;Go Back&amp;amp;lt;\/a&amp;amp;gt;<br \/>\n&amp;amp;lt;h1&amp;amp;gt;{{$todo-&amp;amp;gt;text}}&amp;amp;lt;\/h1&amp;amp;gt;<br \/>\n@endsection<br \/>\n[\/code]<\/p>\n\n\n<div class=\"epyt-gallery\" data-currpage=\"1\" id=\"epyt_gallery_73203\"><iframe loading=\"lazy\"  id=\"_ytid_36530\"  width=\"760\" height=\"427\"  data-origwidth=\"760\" data-origheight=\"427\" src=\"https:\/\/www.youtube.com\/embed\/?enablejsapi=1&#038;autoplay=0&#038;cc_load_policy=0&#038;cc_lang_pref=&#038;iv_load_policy=1&#038;loop=0&#038;rel=1&#038;fs=1&#038;playsinline=0&#038;autohide=2&#038;theme=dark&#038;color=red&#038;controls=1&#038;disablekb=0&#038;\" class=\"__youtube_prefs__  no-lazyload\" title=\"YouTube player\"  data-epytgalleryid=\"epyt_gallery_73203\"  allow=\"fullscreen; accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen data-no-lazy=\"1\" data-skipgform_ajax_framebjll=\"\"><\/iframe><div class=\"epyt-gallery-list\"><div>Sorry, there was a YouTube error.<\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>1.Create Project in Laravel Composer create-project laravel\/laravel todolist 2.Create CRUD Controller php artisan make:controller TodosController &#8211;resource 3.Route setup of CRUD Controller routes\/web.php 4.Create Database todolist localhost\/phpmyadmin create database todolist 5.Create&#8230; <\/p>\n","protected":false},"author":1,"featured_media":6052,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[5201],"tags":[5203,177,5202],"class_list":["post-5991","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel","tag-laravel","tag-php","tag-php-framework"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/5991","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=5991"}],"version-history":[{"count":7,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/5991\/revisions"}],"predecessor-version":[{"id":25520,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/5991\/revisions\/25520"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media\/6052"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=5991"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=5991"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=5991"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}