menu

Phalcon - Introduction syntax


Pada tutorial kemarin kita sudah berexperiment menambahkan file .env dan membuat function dd yang digunakan untuk debug code,

Sebelum masuk ke tutorial crud maka ada baiknya kita biasakan diri terlebih dahulu dengan syntax-syntax yang ada apa phalcon,

Oke langsung saja kita mulai bereksperiment dengan phalcon,
Pertama, edit file router.php pada path app/config/ menjadi seperti ini, 
<?php

$router = $di->getRouter();

// Define your routes here
/**
 * Get user lists data by query
 */
$router->addGet(
    "/test",
    [
        "controller"        => "test",
        "action"            => "test"
    ]
);

$router->handle();

Selanjutnya, buat file TestController.php dan isikan code berikut,
<?php

use Phalcon\Forms\Element\Text;
use Phalcon\Forms\Form;

class TestController extends ControllerBase
{
    public function testAction()
    {
     $users = ['aan', 'hei', 'lala'];
     $genders = [
      'LK' => 'Laki-laki',
      'PR' => 'Perempuan'
     ];
        $data['users'] = $users;
        $data['genders'] = $genders;

        //play form phalcon, untuk lebih jelasnya akan dijelaskan pada bab crud
        $form = new Form();
        $name = new Text("name", array('placeholder' => 'Type your name'));
        $name->setLabel('Nama user');
        $form->add($name);
        // dd($data);
     $this->view->data = $data;
        $this->view->form = $form;
     $this->view->title = "Phalcon - User";
    }
}

Kemudian, buat file view test.volt pada path app/views/test/ dan isikan code berikut,
{% extends 'layouts/default1.volt' %}

{% block content %}
 <br>
 <div class="row">
  <div class="col-md-12">
   Hello codedoct!!!
   <br>
   users:
   {% if (data['users']) %}
    <ul>
     {% for user in data['users'] %}
      <li>{{user}}</li>
     {% endfor %}
    </ul>
   {% endif %}
  </div>
 </div>

 <div class="row">
  <div class="col-md-12">
   gender:
   <ul>
    {% for key, value in data['genders'] %}
     <li>{{value}}</li>
    {% endfor %}
   </ul>
  </div>
 </div>
 <br>
 <h5>Yang atas menggunakan form phalcon yang bawah menggunakan form biasa</h5>
 <div class="row">
  <div class="col-md-12">
   {{ form.label('name') }}
   {{ form.render('name', ['class':'form-control']) }}
   <br>
  </div>
 </div>
 <div class="row">
  <div class="col-md-12">
   <label>Nama user</label>
   <input type="text" name="name" class="form-control" placeholder="Type your name">
  </div> 
 </div>
 
{% endblock %}

Untuk mengetestnya buka url project phalcon kita dan arahkan pada route test, sehingga akan tampak seperti gambar dibawah ini,


Silahkan dipelajari sendiri syntax-syntaxnya, hehe..

===DONE!===