CodeSytytysohjaimet, Näkymät Reititys: Opi esimerkkisovelluksella

Tässä opetusohjelmassa opit seuraavat aiheet.

  • Reititys – reititys vastaa URL-pyyntöihin vastaamisesta. Reititys yhdistää URL-osoitteen ennalta määriteltyihin reitteihin. Jos reittiä ei löydy, CodeIgniter heittää sivulle ei löytynyt poikkeuksen.
  • ohjaimet – reitit on linkitetty ohjaimiin. Ohjaimet liimaavat mallit ja näkymät yhteen. Data/liiketoimintalogiikan pyyntö mallista ja tulokset palautetaan näkymän esitykseen. Kun URL-osoite on kohdistettu reittiin, se välitetään ohjaimen julkiseen toimintoon. Tämä toiminto on vuorovaikutuksessa tietolähteen, liiketoimintalogiikan kanssa ja palauttaa näkymän, joka näyttää tulokset.
  • Näyttökerrat – Näkemykset ovat esittelyvastuussa. Näkymä on yleensä yhdistelmä HTML-, CSS- ja JavaKäsikirjoitus. Tämä osa vastaa verkkosivun näyttämisestä käyttäjälle. Tyypillisesti näytettävät tiedot haetaan yleensä tietokannasta tai muista saatavilla olevista tietolähteistä.

Kuinka luoda uusi CodeSytytinprojekti

Käytämme Composeria uuden projektin luomiseen. Käytän PHP sisäänrakennettua palvelinta, joten ei tarvitse olla ylimääräisiä ohjelmistoja, kuten Apache. Tässä opetusohjelmassa käytämme Windows käyttöjärjestelmä. Siksi olemme luoneet Sites-kansion asemaan C. Voit käyttää mitä tahansa sinulle sopivaa hakemistoa.

Avaa komentorivi/pääte ja suorita seuraava komento

cd C:\Sites

Luomme nyt a CodeIgniter-projekti Composerilla. Suorita seuraava komento.

composer create-project CodeIgniter/framework ci-app

TÄSSÄ,

  • Yllä oleva komento luo uuden CodeIgniter-projektin versio 3 käyttäen uusinta vakaata julkaisua eli versiota 3.1.9 hakemistoon ci-app.

Kun yllä oleva komento on suoritettu loppuun, sinun pitäisi pystyä saamaan seuraavanlaisia ​​tuloksia päätteessä

Luoda uusi CodeSytytinprojekti

Suorita seuraava komento selataksesi äskettäin luotuun projektihakemistoon ci-app

cd ci-app

Aloitetaan nyt sisäänrakennettu PHP-verkkopalvelin

 php -S localhost:3000

TÄSSÄ,

  • Yllä oleva komento käynnistää sisäänrakennetun PHP-palvelimen, joka toimii portissa 3000.

Avaa verkkoselain ja selaa seuraavaa URL-osoitetta: http://localhost:3000/

Saat seuraavan sivun

Luoda uusi CodeSytytinprojekti

Jos näet yllä olevan sivun, onnittelut, asennus on onnistunut Codesytytin.

Kuten yllä olevalta verkkosivulta voit lukea, yllä näkyvä sivu on hahmonnettu näkymässä, joka sijaitsee osoitteessa application/views/welcome_message.php ja vastaava ohjain sijaitsee osoitteessa application/controllers/Welcome.php.

CodeSytyttimen reititys

Tällä hetkellä sovelluksellamme on vain yksi URL-osoite, joka on kotisivu. Tässä osiossa räätälöimme kotiosion. Luomme uusia URL-osoitteita, jotka vastaavat erilaisiin pyyntöihin.

Aloitetaan kotisivun reitillä

Avaa reittitiedosto alla olevan polun osoittamalla tavalla

application/config/routes.php

Sinun pitäisi pystyä näkemään seuraava sisältö

$route['default_controller'] = 'welcome';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;

TÄSSÄ,

  • $route['default_controller'] = 'Tervetuloa'; määrittää oletusohjaimen, joka vastaa URI-pyyntöihin
  • $route['404_override'] = ”; tämän reitin avulla voit määrittää mukautetun reitin 404-virheille. 404-virhe tapahtuu, kun sivua ei löydy. CodeIgniterillä on oletuskäsittelijä virheelle, mutta voit määrittää oman, jos niin haluat.
  • $route['translate_uri_dashes'] = FALSE; tämä asetus antaa sinun muuntaa viivat alaviivoiksi. Käsittelemme tätä asetusta, kun tarkastelemme reittien toimintaa CodeSytytin.

Tarkastellaan nyt ohjainmenetelmää, joka vastaa kotisivun näyttämisestä, jonka näimme avattaessamme URL-osoitteen http://localhost:3000/ selaimessa.

Avaa seuraava tiedosto

application/controllers/Welcome.php

Sinun pitäisi pystyä näkemään seuraava koodi

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Welcome extends CI_Controller {

	public function index()
	{
		$this->load->view('welcome_message');
	}
}

TÄSSÄ,

  • Määritelty ('BASEPATH') TAI exit('Suoraa komentosarjojen käyttöä ei sallita'); suojaa ohjainluokan suoralta käyttämiseltä ilman index.php-tiedoston läpikulkua. Muista, että MVC-paradigmassa kaikilla pyynnöillä on yksi aloituspiste, ja CodeIgniter, sen index.php. Tämä koodi estää kaikki pyynnöt, jotka eivät tule index.php:n kautta.
  • luokka Tervetuloa laajentaa CI_Controller {…} määrittää luokan Tervetuloa, joka laajentaa pääluokan CI_Controller
  • public function index() määrittää julkisen funktion, joka kutsutaan oletusarvoisesti, kun avaat kotisivun
  • $this->load->view('welcome_message'); tämä rivi lataa näkymän welcome_message. Tiedosto welcome_message sijaitsee hakemistossa application/views/welcome_message.php

Tähän mennessä olemme tutkineet vain sitä, mitä laatikosta tulee ulos CodeSytytin, yritetään nyt tehdä joitakin muutoksia. Luomme kotisivun ja korvaamme oletussivun

Luo uusi tiedosto osoitteessa application/views/home.php

Lisää seuraava koodi osoitteeseen home.php

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Hello CodeIgniter!</title>
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.2/css/bulma.min.css">
        <script defer src="https://use.fontawesome.com/releases/v5.3.1/js/all.js"></script>
    </head>
    <body>
        <section class="section">
            <div class="container">
                <h1 class="title">
                    CodeIgniter Hello World
                </h1>
            </div>
        </section>
    </body>
</html>

TÄSSÄ,

Yllä oleva HTML-koodi lataa Burman SSS-kehyksen ja fontin CDN-verkosta luovat hyvin yksinkertaisen HTML-dokumentin. Se soveltaa hyvin yksinkertaista CSS-sääntöä Burman CSS-kehyksestä.

Avaa seuraava URL-osoite selaimessasi: http://localhost:3000/

Sinun pitäisi pystyä näkemään seuraavat asiat

CodeSytyttimen reititys

Hienoa, olemme juuri muuttaneet kotisivua onnistuneesti. Jatketaan, määritellään reittimme. Oletetaan, että sovelluksemme on pystyttävä näyttämään myös Tietoja meistä -sivu.

Luo reitti

Avaa reittitiedosto application/config.routes.php

Lisää seuraava reitti

$route['about-us'] = 'welcome/about_us';

TÄSSÄ,

  • Kun kävijä vierailee URL-osoitteessa /tietoa-meistä, ohjeistamme häntä CodeSytytin etsii ohjainta. Tervetuloa ja suorita about_us-metodi.

Luo ohjain

Määritellään nyt itseämme koskeva ohjainmenetelmä

Avaa application/controllers/Welcome.php

Lisää seuraava menetelmä

public function about_us(){
            $this->load->view('about_us');
        }

TÄSSÄ,

  • Yllä oleva koodi määrittelee funktion about_us ja lataa näkymän about_us.

Luo näkymä

Luodaan nyt näkymä, johon juuri viitattiin yllä olevassa osiossa

Luo uusi tiedosto about_us.php osoitteessa application/views/about_us.php

Lisää seuraava koodi

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>About CodeIgniter!</title>
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.2/css/bulma.min.css">
        <script defer src="https://use.fontawesome.com/releases/v5.3.1/js/all.js"></script>
    </head>
    <body>
        <section class="section">
            <div class="container">
                <h1 class="title">
                    About us yap...                
                </h1>
            </div>
        </section>
    </body>
</html>

Nyt on hyvä mennä, avaa seuraava URL-osoite verkkoselaimessasi: http://localhost:3000/index.php/about-us

Näet seuraavan sivun

Luo näkymä Codesytytin

Jos näet yllä olevan sivun, onnittelut, olet onnistuneesti luonut yksinkertaisen sovelluksen. CodeSytytin.

Yhteenveto

Tässä opetusohjelmassa käsittelimme kolmea (3) pääkomponenttia, jotka muodostavat CodeIgniter-sovellus. Tarkastelimme reittejä ja niiden määrittelyä, ohjaimia ja reittipyyntöihin vastaavien metodien luomista sekä loimme yksinkertaisia ​​näkymiä, jotka palautetaan käyttäjille heidän pyytäessään resurssia.

Tiivistä tämä viesti seuraavasti: