2021-04-23 [長年日記]

_ [CodeIgniter] CodeIgniterの練習

http://blog.a-way-out.net/blog/2020/12/29/how-to-install-codeigniter-404/ を写経します。

create project

composer create-project codeigniter4/appstarter ci4test

edit .env

cd ci4test
cp env .env
vi .env

diff:

17c17
< # CI_ENVIRONMENT = production
---
> CI_ENVIRONMENT = development
23a24
> app.baseURL = 'http://localhost:8080/'
54,58c55,59
< # database.default.hostname = localhost
< # database.default.database = ci4
< # database.default.username = root
< # database.default.password = root
< # database.default.DBDriver = MySQLi
---
> database.default.hostname = localhost
> database.default.database = test.db
> database.default.username = root
> database.default.password = root
> database.default.DBDriver = SQLite3
123c124
< # logger.threshold = 4
---
> logger.threshold = 9

この設定で、writable/test.dbが作られ、DBとして使われる。

Timezoneなど設定する vi app/Config/App.php

実行

php spark serve # Webサーバ動く
XDEBUG_MODE=coverage composer test # テスト動く
php spark session:migration 
php spark migrate # migration動く
sqlite3 test.db # migrationの結果を確認

ログはここ。 writable/logs/log-2021-04-23.log

画面追加したい

controller追加

http://localhost:8080/blog/(index) を表示したい

app/Controllers/Blog.php:

<?php
namespace App\Controllers;

class Blog extends BaseController{

    public function index()
    {
        echo view('BlogIndex');
    }

    public function comment()
    {
        echo 'I am not flat!';
    }
}

Layoutを作る.

app/Views/default.php:

<!doctype html>
<html>
  <head>
    <title>My Layout</title>
  </head>
  <body>
    <h1>写経</h1>
    ここから<hr>
    <?= $this->renderSection('content') ?>
    <hr>ここまで
  </body>
</html>

<?= $this->renderSection('content') ?> にビューが読み込まれる

BlogIndex.phpを作る

<?= $this->extend('default') ?> # 上記default.phpを使う
<?= $this->section('content') ?> # ここからendSection()までをレイアウトのrenderSection()に読ませる
<h1>うelcome to my Blog!</h1>
<p>今日は暑かったですでござる</p>
<?= $this->endSection('content') ?>

以上で画面追加できる。

_ あとは

  • ビューヘルパー
  • DBアクセス
  • jsonの返し方

など。


検索キーワード:

記事

  • 2021-06-15
    • 1. [Arduino][ラズパイ]サーボで世界を動かす
  • 2021-06-01
    • 1. [ubuntu]sshポート22から変更した
  • 2021-05-16
    • 1. [ubuntu]RAID死んだので直した
    • 2. [ubuntu]18→20にUpgradeしたら起動しなくなった話
    • 3. [tdiary]スタイル調整
  • 2021-05-14
    • 1. [Gnome][ubuntu]拡張機能
  • 2021-05-12
    • 1. [Python]pyenvが謎の仕様変更

カテゴリ

Amazon | Android | apache | Arduino | bash | bluetooth | Books | CakePHP | CakePHP3 | CakePHP4 | Chrome | Chromebook | CodeIgniter | CSS | Docker | Eclipse | Emacs | etc | Firefox | Flask | Gadget | git | Gnome | Google | Heroku | HTML | hugo | Internet | iPhone | IS01 | IS03 | Java | JavaScript | json | Kotlin | Laravel | LINE | magento | mysql | nginx | nodejs | Oops | PC | Perl | php | Python | Qt | Ruby | ruby | Shell | tdiary | twitter | ubuntu | unix | Web | Windows | windows | WindowsMobile | WX5 | YAML | zsh | ここか | そば | つくる | つり | できごと | アクアリウム | ギター | セキュリティ | プリンタ | ベース | ボクシング | ポエム | マネー | メシ | ラズパイ | 仕事 | 作家 | 壮絶 | 妄想 | 忘れる | 料理 | | 暑い | 痛い | 社会 | 自転車 | | 車輪 | | 野球 | 銭湯 | 音楽 |

全部 : / 今日 :

近頃

links

profile

もっとヒゲ伸ばしたい。