{"id":2283,"date":"2017-03-30T21:45:44","date_gmt":"2017-03-30T21:45:44","guid":{"rendered":"https:\/\/www.codexworld.com\/?p=2283"},"modified":"2017-04-10T18:17:25","modified_gmt":"2017-04-10T18:17:25","slug":"laravel-basic-tutorial-database-model-routing-layouts-views","status":"publish","type":"post","link":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/","title":{"rendered":"Laravel Basic Tutorial &#8211; Database, Model, Routing, Layouts &#038; Views"},"content":{"rendered":"<p>Our previous tutorial has explained how to <a href=\"http:\/\/www.codexworld.com\/laravel-tutorial-for-beginners-installation-configuration\/\">install and configure Laravel application on Windows or Ubuntu<\/a>. Now we&#8217;ll go through the basic guide on setting up Laravel 5 application and implementing data list functionality. This tutorial is perfect for beginners to starting with Laravel 5.<\/p>\n<p>To show the basic functionality in Laravel, we&#8217;ll create an example application with Laravel 5, which will show you how to setup database, retrieve data from the database, and display data in the view. Here we&#8217;ll build a sample application to retrieve posts data from the database and list posts data in a view. This application includes the guides on following topics.<\/p>\n<ul class=\"bullet_disk_list\">\n<li>Database configuration<\/li>\n<li>Database migrations<\/li>\n<li>Routing <\/li>\n<li>Model creation<\/li>\n<li>Blade templates, layouts, and views<\/li>\n<\/ul>\n<h2>Database Configuration<\/h2>\n<p>Open the <code>.env<\/code> file and specify the database credentials to connect the database for your Laravel application.<\/p>\n<pre><span style=\"color:#794938\">DB_CONNECTION<\/span>=mysql\r\n<span style=\"color:#794938\">DB_HOST<\/span>=127.0.0.1\r\n<span style=\"color:#794938\">DB_PORT<\/span>=3306\r\n<span style=\"color:#794938\">DB_DATABASE<\/span>=laravel\r\n<span style=\"color:#794938\">DB_USERNAME<\/span>=root\r\n<span style=\"color:#794938\">DB_PASSWORD<\/span>=root\r\n<\/pre>\n<p>The <code>.env<\/code> file can be found in the root directory. If you don&#8217;t see the <code>.env<\/code> file, enable the <b>Show Hidden Files<\/b> option.<\/p>\n<h2>Basic Post List Tutorial<\/h2>\n<h2>Database Table Creation<\/h2>\n<p>Let&#8217;s create a &#8220;posts&#8221; table in the database that will hold all the posts data. The <a href=\"https:\/\/laravel.com\/docs\/5.4\/artisan\" target=\"_blank\">Artisan CLI<\/a> can be used to generate a variety of classes for your Laravel project.<\/p>\n<p>Navigate to the Laravel project directory.<\/p>\n<pre>cd \/var\/www\/html\/laravel<\/pre>\n<p>Use <code>make:migration<\/code> command to create a new database migration for &#8220;posts&#8221; table.<\/p>\n<pre>php artisan make:migration create_posts_table --create=posts<\/pre>\n<p>Open the <code>database\/migrations\/xxxxxx_create_posts_table.php<\/code> file and add the desired fields:<\/p>\n<pre><span style=\"color: #0000BB\">&lt;?php<br \/><br \/><\/span><span style=\"color: #007700\">use&nbsp;<\/span><span style=\"color: #0000BB\">Illuminate<\/span><span style=\"color: #007700\">\\<\/span><span style=\"color: #0000BB\">Database<\/span><span style=\"color: #007700\">\\<\/span><span style=\"color: #0000BB\">Schema<\/span><span style=\"color: #007700\">\\<\/span><span style=\"color: #0000BB\">Blueprint<\/span><span style=\"color: #007700\">;<br \/>use&nbsp;<\/span><span style=\"color: #0000BB\">Illuminate<\/span><span style=\"color: #007700\">\\<\/span><span style=\"color: #0000BB\">Database<\/span><span style=\"color: #007700\">\\<\/span><span style=\"color: #0000BB\">Migrations<\/span><span style=\"color: #007700\">\\<\/span><span style=\"color: #0000BB\">Migration<\/span><span style=\"color: #007700\">;<br \/><br \/>class&nbsp;<\/span><span style=\"color: #0000BB\">CreatePostsTable&nbsp;<\/span><span style=\"color: #007700\">extends&nbsp;<\/span><span style=\"color: #0000BB\">Migration<br \/><\/span><span style=\"color: #007700\">{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #FF8000\">\/**<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Run&nbsp;the&nbsp;migrations.<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return&nbsp;void<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*\/<br \/>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #007700\">public&nbsp;function&nbsp;<\/span><span style=\"color: #0000BB\">up<\/span><span style=\"color: #007700\">()<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #0000BB\">Schema<\/span><span style=\"color: #007700\">::<\/span><span style=\"color: #0000BB\">create<\/span><span style=\"color: #007700\">(<\/span><span style=\"color: #DD0000\">'posts'<\/span><span style=\"color: #007700\">,&nbsp;function&nbsp;(<\/span><span style=\"color: #0000BB\">Blueprint&nbsp;$table<\/span><span style=\"color: #007700\">)&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #0000BB\">$table<\/span><span style=\"color: #007700\">-&gt;<\/span><span style=\"color: #0000BB\">increments<\/span><span style=\"color: #007700\">(<\/span><span style=\"color: #DD0000\">'id'<\/span><span style=\"color: #007700\">);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #0000BB\">$table<\/span><span style=\"color: #007700\">-&gt;<\/span><span style=\"color: #0000BB\">string<\/span><span style=\"color: #007700\">(<\/span><span style=\"color: #DD0000\">'title'<\/span><span style=\"color: #007700\">,&nbsp;<\/span><span style=\"color: #0000BB\">100<\/span><span style=\"color: #007700\">);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #0000BB\">$table<\/span><span style=\"color: #007700\">-&gt;<\/span><span style=\"color: #0000BB\">text<\/span><span style=\"color: #007700\">(<\/span><span style=\"color: #DD0000\">'content'<\/span><span style=\"color: #007700\">);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #0000BB\">$table<\/span><span style=\"color: #007700\">-&gt;<\/span><span style=\"color: #0000BB\">dateTime<\/span><span style=\"color: #007700\">(<\/span><span style=\"color: #DD0000\">'created'<\/span><span style=\"color: #007700\">);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #0000BB\">$table<\/span><span style=\"color: #007700\">-&gt;<\/span><span style=\"color: #0000BB\">dateTime<\/span><span style=\"color: #007700\">(<\/span><span style=\"color: #DD0000\">'modified'<\/span><span style=\"color: #007700\">);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;});<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/><br \/>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #FF8000\">\/**<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Reverse&nbsp;the&nbsp;migrations.<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return&nbsp;void<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*\/<br \/>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #007700\">public&nbsp;function&nbsp;<\/span><span style=\"color: #0000BB\">down<\/span><span style=\"color: #007700\">()<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #0000BB\">Schema<\/span><span style=\"color: #007700\">::<\/span><span style=\"color: #0000BB\">drop<\/span><span style=\"color: #007700\">(<\/span><span style=\"color: #DD0000\">'posts'<\/span><span style=\"color: #007700\">);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>}<br \/><\/span><\/pre>\n<p>Get details about database migration from <a href=\"https:\/\/laravel.com\/docs\/5.4\/migrations\" target=\"_blank\">here<\/a>.<\/p>\n<p>Use <code>migrate<\/code> Artisan command to run the migrations.<\/p>\n<pre>php artisan migrate<\/pre>\n<h2>Model<\/h2>\n<p>Laravel&#8217;s default ORM is <a href=\"https:\/\/laravel.com\/docs\/5.4\/eloquent\" target=\"_blank\">Eloquent<\/a>. Eloquent makes easy to retrieve and store data in the database through <b>models<\/b>. Basically each model in Eloquent connected with a single database table.<\/p>\n<p>Define a <code>Post<\/code> model that communicates with <code>posts<\/code> database table. Use <code>make:model<\/code> command to generate a <code>Post<\/code> model.<\/p>\n<pre>php artisan make:model Post<\/pre>\n<p>The newly created Post model will be located in <code>app\/<\/code> directory and it will look like the below.<\/p>\n<pre><span style=\"color: #0000BB\">&lt;?php<br \/><br \/><\/span><span style=\"color: #007700\">namespace&nbsp;<\/span><span style=\"color: #0000BB\">App<\/span><span style=\"color: #007700\">;<br \/><br \/>use&nbsp;<\/span><span style=\"color: #0000BB\">Illuminate<\/span><span style=\"color: #007700\">\\<\/span><span style=\"color: #0000BB\">Database<\/span><span style=\"color: #007700\">\\<\/span><span style=\"color: #0000BB\">Eloquent<\/span><span style=\"color: #007700\">\\<\/span><span style=\"color: #0000BB\">Model<\/span><span style=\"color: #007700\">;<br \/><br \/>class&nbsp;<\/span><span style=\"color: #0000BB\">Post&nbsp;<\/span><span style=\"color: #007700\">extends&nbsp;<\/span><span style=\"color: #0000BB\">Model<br \/><\/span><span style=\"color: #007700\">{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #FF8000\">\/\/<br \/><\/span><span style=\"color: #007700\">}<br \/><\/span><\/pre>\n<h2>Routing<\/h2>\n<p>Routes are used to point URLs to controllers and it is executed when user access a page.<\/p>\n<p>For this example application, we&#8217;ll need only one route to display a list of the posts. Open the <code>app\/Http\/routes.php<\/code> file and define a route to display the post list. Also, we need to use the Post model to retrieve the posts data from the database.<\/p>\n<pre><span style=\"color: #0000BB\">&lt;?php<br \/><br \/><\/span><span style=\"color: #007700\">use&nbsp;<\/span><span style=\"color: #0000BB\">App<\/span><span style=\"color: #007700\">\\<\/span><span style=\"color: #0000BB\">Post<\/span><span style=\"color: #007700\">;<br \/>use&nbsp;<\/span><span style=\"color: #0000BB\">Illuminate<\/span><span style=\"color: #007700\">\\<\/span><span style=\"color: #0000BB\">Http<\/span><span style=\"color: #007700\">\\<\/span><span style=\"color: #0000BB\">Request<\/span><span style=\"color: #007700\">;<br \/><br \/><\/span><span style=\"color: #FF8000\">\/**<br \/>&nbsp;*&nbsp;Display&nbsp;All&nbsp;Posts<br \/>&nbsp;*\/<br \/><\/span><span style=\"color: #0000BB\">Route<\/span><span style=\"color: #007700\">::<\/span><span style=\"color: #0000BB\">get<\/span><span style=\"color: #007700\">(<\/span><span style=\"color: #DD0000\">'\/posts'<\/span><span style=\"color: #007700\">,&nbsp;function&nbsp;()&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #FF8000\">\/\/<\/span><span style=\"color: #007700\"><br \/><\/span><span style=\"color: #007700\">});<\/span><\/pre>\n<p>Now retrieve the posts data from the database through <code>Post<\/code> model, specify a view (posts), and pass the posts data to the view.<\/p>\n<pre><span style=\"color: #0000BB\">Route<\/span><span style=\"color: #007700\">::<\/span><span style=\"color: #0000BB\">get<\/span><span style=\"color: #007700\">(<\/span><span style=\"color: #DD0000\">'\/posts'<\/span><span style=\"color: #007700\">,&nbsp;function&nbsp;(){<br \/>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #0000BB\">$posts&nbsp;<\/span><span style=\"color: #007700\">=&nbsp;<\/span><span style=\"color: #0000BB\">Post<\/span><span style=\"color: #007700\">::<\/span><span style=\"color: #0000BB\">orderBy<\/span><span style=\"color: #007700\">(<\/span><span style=\"color: #DD0000\">'created'<\/span><span style=\"color: #007700\">,<\/span><span style=\"color: #DD0000\">'desc'<\/span><span style=\"color: #007700\">)-&gt;<\/span><span style=\"color: #0000BB\">get<\/span><span style=\"color: #007700\">();<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;<\/span><span style=\"color: #0000BB\">view<\/span><span style=\"color: #007700\">(<\/span><span style=\"color: #DD0000\">'posts'<\/span><span style=\"color: #007700\">,&nbsp;[<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #DD0000\">'posts'&nbsp;<\/span><span style=\"color: #007700\">=&gt;&nbsp;<\/span><span style=\"color: #0000BB\">$posts<br \/>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #007700\">]);&nbsp;<br \/>});<\/span><\/pre>\n<h2>Layouts &#038; Views<\/h2>\n<p>Laravel uses the <a href=\"https:\/\/laravel.com\/docs\/5.4\/blade\" target=\"_blank\">Blade templating engine<\/a> to render the view and all the view files should have <code>.blade.php<\/code> extension. All Laravel views are stored in <code>resources\/views\/<\/code> directory and create a <code>resources\/views\/layouts\/<\/code> directory to store the layouts.  <\/p>\n<p><b>Layout<\/b><br \/>\nCreate a <code>resources\/views\/layouts\/app.blade.php<\/code> file and Place the following code to define a simple layout.<\/p>\n<pre>&lt;!<span style=\"color:#bf4f24\">DOCTYPE<\/span> html>\r\n&lt;<span style=\"color:#bf4f24\">html<\/span> <span style=\"color:#bf4f24\">lang<\/span>=<span style=\"color:#0b6125\">\"en\"<\/span>>\r\n    &lt;<span style=\"color:#bf4f24\">head<\/span>>\r\n        &lt;<span style=\"color:#bf4f24\">title<\/span>>Laravel Quickstart - Basic&lt;\/<span style=\"color:#bf4f24\">title<\/span>>\r\n\r\n        <span style=\"color:#5a525f;font-style:italic\">&lt;!-- CSS And JavaScript --><\/span>\r\n    &lt;\/<span style=\"color:#bf4f24\">head<\/span>>\r\n\r\n    &lt;<span style=\"color:#bf4f24\">body<\/span>>\r\n        &lt;<span style=\"color:#bf4f24\">div<\/span> <span style=\"color:#bf4f24\">class<\/span>=<span style=\"color:#0b6125\">\"container\"<\/span>>\r\n            &lt;<span style=\"color:#bf4f24\">nav<\/span> <span style=\"color:#bf4f24\">class<\/span>=<span style=\"color:#0b6125\">\"navbar navbar-default\"<\/span>>\r\n                <span style=\"color:#5a525f;font-style:italic\">&lt;!-- Navbar Contents --><\/span>\r\n            &lt;\/<span style=\"color:#bf4f24\">nav<\/span>>\r\n        &lt;\/<span style=\"color:#bf4f24\">div<\/span>>\r\n        <span style=\"color: #007700\">@yield(<\/span><span style=\"color: #DD0000\">'content'<\/span><span style=\"color: #007700\">)<\/span>\r\n    &lt;\/<span style=\"color:#bf4f24\">body<\/span>>\r\n&lt;\/<span style=\"color:#bf4f24\">html<\/span>>\r\n<\/pre>\n<p><b>View<\/b><br \/>\nCreate a <code>resources\/views\/posts.blade.php<\/code> file and insert the following code. This view will display the existing posts data as list format.<\/p>\n<pre><span style=\"color: #007700\">@extends(<\/span><span style=\"color: #DD0000\">'layouts.app'<\/span><span style=\"color: #007700\">)<\/span>\r\n\r\n<span style=\"color: #007700\">@section(<\/span><span style=\"color: #DD0000\">'content'<\/span><span style=\"color: #007700\">)<\/span>\r\n    \r\n<span style=\"color:#5a525f;font-style:italic\">&lt;!-- All Posts --><\/span>\r\n<span style=\"color: #007700\">@if(<\/span><span style=\"color: #0000BB\">count<\/span><span style=\"color: #007700\">(<\/span><span style=\"color: #0000BB\">$posts<\/span><span style=\"color: #007700\">)&nbsp;&gt;&nbsp;<\/span><span style=\"color: #0000BB\">0<\/span><span style=\"color: #007700\">)<\/span>\r\n    \r\n    &lt;<span style=\"color:#bf4f24\">div<\/span> <span style=\"color:#bf4f24\">class<\/span>=<span style=\"color:#0b6125\">\"panel panel-default\"<\/span>>\r\n        &lt;<span style=\"color:#bf4f24\">div<\/span> <span style=\"color:#bf4f24\">class<\/span>=<span style=\"color:#0b6125\">\"panel-heading\"<\/span>>\r\n            All Posts\r\n        &lt;\/<span style=\"color:#bf4f24\">div<\/span>>\r\n\r\n        &lt;<span style=\"color:#bf4f24\">div<\/span> <span style=\"color:#bf4f24\">class<\/span>=<span style=\"color:#0b6125\">\"panel-body\"<\/span>>\r\n            &lt;<span style=\"color:#bf4f24\">table<\/span> <span style=\"color:#bf4f24\">class<\/span>=<span style=\"color:#0b6125\">\"table table-striped task-table\"<\/span>>\r\n\r\n                <span style=\"color:#5a525f;font-style:italic\">&lt;!-- Table Headings --><\/span>\r\n                &lt;<span style=\"color:#bf4f24\">thead<\/span>>\r\n                    &lt;<span style=\"color:#bf4f24\">th<\/span>>Title&lt;\/<span style=\"color:#bf4f24\">th<\/span>>\r\n                    &lt;<span style=\"color:#bf4f24\">th<\/span>>Content&lt;\/<span style=\"color:#bf4f24\">th<\/span>>\r\n                &lt;\/<span style=\"color:#bf4f24\">thead<\/span>>\r\n\r\n                <span style=\"color:#5a525f;font-style:italic\">&lt;!-- Table Body --><\/span>\r\n                &lt;<span style=\"color:#bf4f24\">tbody<\/span>>\r\n                <span style=\"color: #007700\">@foreach(<\/span><span style=\"color: #0000BB\">$posts&nbsp;<\/span><span style=\"color: #007700\">as&nbsp;<\/span><span style=\"color: #0000BB\">$post<\/span><span style=\"color: #007700\">)<\/span>\r\n                    &lt;<span style=\"color:#bf4f24\">tr<\/span>>\r\n                        &lt;<span style=\"color:#bf4f24\">td<\/span> <span style=\"color:#bf4f24\">class<\/span>=<span style=\"color:#0b6125\">\"table-text\"<\/span>>\r\n                            &lt;<span style=\"color:#bf4f24\">div<\/span>><span style=\"color: #007700\">{{<\/span><span style=\"color: #0000BB\">$post<\/span><span style=\"color: #007700\">-&gt;<\/span><span style=\"color: #0000BB\">title<\/span><span style=\"color: #007700\">}}<\/span>&lt;\/<span style=\"color:#bf4f24\">div<\/span>>\r\n                        &lt;\/<span style=\"color:#bf4f24\">td<\/span>>\r\n                        &lt;<span style=\"color:#bf4f24\">td<\/span> <span style=\"color:#bf4f24\">class<\/span>=<span style=\"color:#0b6125\">\"table-text\"<\/span>>\r\n                            &lt;<span style=\"color:#bf4f24\">div<\/span>><span style=\"color: #007700\">{{<\/span><span style=\"color: #0000BB\">$post<\/span><span style=\"color: #007700\">-&gt;<\/span><span style=\"color: #0000BB\">content<\/span><span style=\"color: #007700\">}}<\/span>&lt;\/<span style=\"color:#bf4f24\">div<\/span>>\r\n                        &lt;\/<span style=\"color:#bf4f24\">td<\/span>>\r\n                    &lt;\/<span style=\"color:#bf4f24\">tr<\/span>>\r\n                <span style=\"color: #007700\">@endforeach<\/span>\r\n                &lt;\/<span style=\"color:#bf4f24\">tbody<\/span>>\r\n            &lt;\/<span style=\"color:#bf4f24\">table<\/span>>\r\n        &lt;\/<span style=\"color:#bf4f24\">div<\/span>>\r\n    &lt;\/<span style=\"color:#bf4f24\">div<\/span>>\r\n    \r\n<span style=\"color: #007700\">@endif<\/span>\r\n\r\n<span style=\"color: #007700\">@endsection<\/span>\r\n<\/pre>\n<h2>Testing<\/h2>\n<p>Now it&#8217;s time to check the functionality. Run <code>\/posts<\/code> URL on the browser, you&#8217;ll see the post list has appeared from the posts database table.<\/p>\n<p>Now you can forward to the advanced functionality of Laravel application. CRUD operations are the commonly used feature in Laravel, go through the below tutorial to learn the add, edit, and delete operations in Laravel 5.<\/p>\n<ul class=\"bullet_disk_list\">\n<li><a href=\"http:\/\/www.codexworld.com\/laravel-tutorial-crud-add-edit-delete-operations\/\">Laravel Tutorial Part 3: CRUD (Create Read Update Delete) Operations<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Our previous tutorial has explained how to install and configure Laravel application on Windows or Ubuntu. Now we&#8217;ll go through the basic guide on setting up Laravel 5 application and implementing data list functionality. This <\/p>\n","protected":false},"author":1,"featured_media":2285,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[272],"tags":[53,271],"class_list":["post-2283","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel","tag-configuration","tag-laravel","cat-272-id","has_thumb"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Laravel Basic Tutorial - Database, Model, Routing, Layouts &amp; Views - CodexWorld<\/title>\n<meta name=\"description\" content=\"Basic step-by-step tutorial on database configuration, routing, and application setup in Laravel - Learn how to connect the database, create model, layout, and view in Laravel.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Laravel Basic Tutorial - Database, Model, Routing, Layouts &amp; Views - CodexWorld\" \/>\n<meta property=\"og:description\" content=\"Basic step-by-step tutorial on database configuration, routing, and application setup in Laravel - Learn how to connect the database, create model, layout, and view in Laravel.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/\" \/>\n<meta property=\"og:site_name\" content=\"CodexWorld\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/codexworld\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/codexworld\" \/>\n<meta property=\"article:published_time\" content=\"2017-03-30T21:45:44+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2017-04-10T18:17:25+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.codexworld.com\/wp-content\/uploads\/2017\/03\/laravel-basic-tutorial-database-model-routing-layouts-views-codexworld.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1366\" \/>\n\t<meta property=\"og:image:height\" content=\"768\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"CodexWorld\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@codexworldblog\" \/>\n<meta name=\"twitter:site\" content=\"@codexworldweb\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"CodexWorld\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/\"},\"author\":{\"name\":\"CodexWorld\",\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/#\\\/schema\\\/person\\\/9da51d8fa3cdefeb5ec9c69136d4baf0\"},\"headline\":\"Laravel Basic Tutorial &#8211; Database, Model, Routing, Layouts &#038; Views\",\"datePublished\":\"2017-03-30T21:45:44+00:00\",\"dateModified\":\"2017-04-10T18:17:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/\"},\"wordCount\":533,\"commentCount\":5,\"publisher\":{\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.codexworld.com\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/laravel-basic-tutorial-database-model-routing-layouts-views-codexworld.png\",\"keywords\":[\"Configuration\",\"Laravel\"],\"articleSection\":[\"Laravel\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/\",\"url\":\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/\",\"name\":\"Laravel Basic Tutorial - Database, Model, Routing, Layouts & Views - CodexWorld\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.codexworld.com\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/laravel-basic-tutorial-database-model-routing-layouts-views-codexworld.png\",\"datePublished\":\"2017-03-30T21:45:44+00:00\",\"dateModified\":\"2017-04-10T18:17:25+00:00\",\"description\":\"Basic step-by-step tutorial on database configuration, routing, and application setup in Laravel - Learn how to connect the database, create model, layout, and view in Laravel.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.codexworld.com\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/laravel-basic-tutorial-database-model-routing-layouts-views-codexworld.png\",\"contentUrl\":\"https:\\\/\\\/www.codexworld.com\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/laravel-basic-tutorial-database-model-routing-layouts-views-codexworld.png\",\"width\":1366,\"height\":768,\"caption\":\"laravel-basic-tutorial-database-model-routing-layouts-views-codexworld\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/laravel-basic-tutorial-database-model-routing-layouts-views\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.codexworld.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Laravel Basic Tutorial &#8211; Database, Model, Routing, Layouts &#038; Views\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/#website\",\"url\":\"https:\\\/\\\/www.codexworld.com\\\/\",\"name\":\"CodexWorld\",\"description\":\"Web &amp; Mobile App Development Company\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.codexworld.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/#organization\",\"name\":\"CodexWorld\",\"url\":\"https:\\\/\\\/www.codexworld.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.codexworld.com\\\/wp-content\\\/uploads\\\/2014\\\/09\\\/codexworld-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.codexworld.com\\\/wp-content\\\/uploads\\\/2014\\\/09\\\/codexworld-logo.png\",\"width\":200,\"height\":19,\"caption\":\"CodexWorld\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/codexworld\",\"https:\\\/\\\/x.com\\\/codexworldweb\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/codexworld\",\"https:\\\/\\\/www.youtube.com\\\/codexworld\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.codexworld.com\\\/#\\\/schema\\\/person\\\/9da51d8fa3cdefeb5ec9c69136d4baf0\",\"name\":\"CodexWorld\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/cf4999db3b409de559f80677afa01729bb2eeda19be273c254e8b2c22729e386?s=96&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/cf4999db3b409de559f80677afa01729bb2eeda19be273c254e8b2c22729e386?s=96&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/cf4999db3b409de559f80677afa01729bb2eeda19be273c254e8b2c22729e386?s=96&r=g\",\"caption\":\"CodexWorld\"},\"description\":\"CodexWorld is a programming blog, one-stop destination for web professionals \u2014 developers, programmers, freelancers, and site owners.\",\"sameAs\":[\"http:\\\/\\\/www.codexworld.com\",\"https:\\\/\\\/www.facebook.com\\\/codexworld\",\"https:\\\/\\\/x.com\\\/codexworldblog\"],\"url\":\"https:\\\/\\\/www.codexworld.com\\\/author\\\/nitya192265\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Laravel Basic Tutorial - Database, Model, Routing, Layouts & Views - CodexWorld","description":"Basic step-by-step tutorial on database configuration, routing, and application setup in Laravel - Learn how to connect the database, create model, layout, and view in Laravel.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/","og_locale":"en_US","og_type":"article","og_title":"Laravel Basic Tutorial - Database, Model, Routing, Layouts & Views - CodexWorld","og_description":"Basic step-by-step tutorial on database configuration, routing, and application setup in Laravel - Learn how to connect the database, create model, layout, and view in Laravel.","og_url":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/","og_site_name":"CodexWorld","article_publisher":"https:\/\/www.facebook.com\/codexworld","article_author":"https:\/\/www.facebook.com\/codexworld","article_published_time":"2017-03-30T21:45:44+00:00","article_modified_time":"2017-04-10T18:17:25+00:00","og_image":[{"width":1366,"height":768,"url":"https:\/\/www.codexworld.com\/wp-content\/uploads\/2017\/03\/laravel-basic-tutorial-database-model-routing-layouts-views-codexworld.png","type":"image\/png"}],"author":"CodexWorld","twitter_card":"summary_large_image","twitter_creator":"@codexworldblog","twitter_site":"@codexworldweb","twitter_misc":{"Written by":"CodexWorld","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/#article","isPartOf":{"@id":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/"},"author":{"name":"CodexWorld","@id":"https:\/\/www.codexworld.com\/#\/schema\/person\/9da51d8fa3cdefeb5ec9c69136d4baf0"},"headline":"Laravel Basic Tutorial &#8211; Database, Model, Routing, Layouts &#038; Views","datePublished":"2017-03-30T21:45:44+00:00","dateModified":"2017-04-10T18:17:25+00:00","mainEntityOfPage":{"@id":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/"},"wordCount":533,"commentCount":5,"publisher":{"@id":"https:\/\/www.codexworld.com\/#organization"},"image":{"@id":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codexworld.com\/wp-content\/uploads\/2017\/03\/laravel-basic-tutorial-database-model-routing-layouts-views-codexworld.png","keywords":["Configuration","Laravel"],"articleSection":["Laravel"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/","url":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/","name":"Laravel Basic Tutorial - Database, Model, Routing, Layouts & Views - CodexWorld","isPartOf":{"@id":"https:\/\/www.codexworld.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/#primaryimage"},"image":{"@id":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codexworld.com\/wp-content\/uploads\/2017\/03\/laravel-basic-tutorial-database-model-routing-layouts-views-codexworld.png","datePublished":"2017-03-30T21:45:44+00:00","dateModified":"2017-04-10T18:17:25+00:00","description":"Basic step-by-step tutorial on database configuration, routing, and application setup in Laravel - Learn how to connect the database, create model, layout, and view in Laravel.","breadcrumb":{"@id":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/#primaryimage","url":"https:\/\/www.codexworld.com\/wp-content\/uploads\/2017\/03\/laravel-basic-tutorial-database-model-routing-layouts-views-codexworld.png","contentUrl":"https:\/\/www.codexworld.com\/wp-content\/uploads\/2017\/03\/laravel-basic-tutorial-database-model-routing-layouts-views-codexworld.png","width":1366,"height":768,"caption":"laravel-basic-tutorial-database-model-routing-layouts-views-codexworld"},{"@type":"BreadcrumbList","@id":"https:\/\/www.codexworld.com\/laravel-basic-tutorial-database-model-routing-layouts-views\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.codexworld.com\/"},{"@type":"ListItem","position":2,"name":"Laravel Basic Tutorial &#8211; Database, Model, Routing, Layouts &#038; Views"}]},{"@type":"WebSite","@id":"https:\/\/www.codexworld.com\/#website","url":"https:\/\/www.codexworld.com\/","name":"CodexWorld","description":"Web &amp; Mobile App Development Company","publisher":{"@id":"https:\/\/www.codexworld.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.codexworld.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.codexworld.com\/#organization","name":"CodexWorld","url":"https:\/\/www.codexworld.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codexworld.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.codexworld.com\/wp-content\/uploads\/2014\/09\/codexworld-logo.png","contentUrl":"https:\/\/www.codexworld.com\/wp-content\/uploads\/2014\/09\/codexworld-logo.png","width":200,"height":19,"caption":"CodexWorld"},"image":{"@id":"https:\/\/www.codexworld.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/codexworld","https:\/\/x.com\/codexworldweb","https:\/\/www.linkedin.com\/company\/codexworld","https:\/\/www.youtube.com\/codexworld"]},{"@type":"Person","@id":"https:\/\/www.codexworld.com\/#\/schema\/person\/9da51d8fa3cdefeb5ec9c69136d4baf0","name":"CodexWorld","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/cf4999db3b409de559f80677afa01729bb2eeda19be273c254e8b2c22729e386?s=96&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/cf4999db3b409de559f80677afa01729bb2eeda19be273c254e8b2c22729e386?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/cf4999db3b409de559f80677afa01729bb2eeda19be273c254e8b2c22729e386?s=96&r=g","caption":"CodexWorld"},"description":"CodexWorld is a programming blog, one-stop destination for web professionals \u2014 developers, programmers, freelancers, and site owners.","sameAs":["http:\/\/www.codexworld.com","https:\/\/www.facebook.com\/codexworld","https:\/\/x.com\/codexworldblog"],"url":"https:\/\/www.codexworld.com\/author\/nitya192265\/"}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/www.codexworld.com\/wp-content\/uploads\/2017\/03\/laravel-basic-tutorial-database-model-routing-layouts-views-codexworld.png","jetpack_shortlink":"https:\/\/wp.me\/p6bxIh-AP","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.codexworld.com\/wp-json\/wp\/v2\/posts\/2283","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codexworld.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.codexworld.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.codexworld.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codexworld.com\/wp-json\/wp\/v2\/comments?post=2283"}],"version-history":[{"count":6,"href":"https:\/\/www.codexworld.com\/wp-json\/wp\/v2\/posts\/2283\/revisions"}],"predecessor-version":[{"id":2314,"href":"https:\/\/www.codexworld.com\/wp-json\/wp\/v2\/posts\/2283\/revisions\/2314"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.codexworld.com\/wp-json\/wp\/v2\/media\/2285"}],"wp:attachment":[{"href":"https:\/\/www.codexworld.com\/wp-json\/wp\/v2\/media?parent=2283"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codexworld.com\/wp-json\/wp\/v2\/categories?post=2283"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codexworld.com\/wp-json\/wp\/v2\/tags?post=2283"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}