CodeIgniter 4 Beta 가 드디어 나왔습니다.


이제 정식 오픈만 해주면 될거 같은데, 속도상 PHP 8 버전 나올때쯤에 나올거같은 느낌이.. (.. .. .. 그때 되면 5 개발한다고 하지 않을까;;)


무튼..


이번 업데이트에서 눈에 띄는게 있어서 테스트 해봤습니다.


New View Layouts provide simple way to create site site view templates.


새로운 레이아웃이 템플릿 형태로 추가되었다는것인데요..


실제로 도큐멘트( https://codeigniter4.github.io/CodeIgniter4/outgoing/view_layouts.html )에도 추가되어 있습니다.


개인적으로 상단에 헤더, 하단에 푸터 로드하는거보다, 레이아웃 방식을 선호하기 때문에, 한번 테스트 해봤습니다.


그런데, 도큐멘트대로 해도 안되길래, 확인을 해보니..



어..


음..


#232 ~ #235 라인에서의 작업을 다 해두고..


#237 ~ #245 에서 레이아웃이 있으면 기존작업을 왜 덮어쓰기를;;



그래서 새로 추가된 함수를 확인해봤습니다.


하나는 레이아웃 지정, 두개는 캐시 시작과 끝..


기존에 제가 사용하는 방식은 page 를 읽고, 레이아웃을 읽고, html 을 읽는 방식인데..


추가된 방식은 이렇게 쓰는건가 보네요.


<html>

<head>{생략}</head>

<body>

<?php

/**

* @var \CodeIgniter\View\View $this

*/

echo $this->renderSection('content');

?>

</body>

</html>


이게 레이아웃 파일..


<?php

/**

* @var \CodeIgniter\View\View $this

*/


// 상단의 레이아웃 파일을 지정.. 현재 return 이 없기 때문에 echo 찍으면 오류가 날 수 있습니다. 있어도 주석을 보면 $this 라;;

$this->extend('layout');


// page 내용 시작. 내용을 뭘로 저장할건지를 지정.

$this->section('content');

?>


page 내용.


<?php

// page 내용 끝.

$this->endSection();

?>


이게 페이지 view 파일..


그래서 Controller 에서는 view 파일을 불러오면 자동으로 레이아웃이랑이 셋팅되게 됩니다.


근데, 이게 기존 3의 도큐멘트에 있었던..


<?php

// 헤더 파일

echo $this->load->view('head');

?>


page 내용.


<?php

// 푸터 파일

echo $this->load->view('foot');

?>


이거보다 더 복잡해 보이는데;;

( 요즘은 개발자 - 디자이너 - 퍼블리셔 3주 체계 잡힌곳이 많아서;; 퍼블리셔들 PHP 코드에 거부감 있는분들이 은근 많;; )


3버전보다는 발전했다고 볼 수는 있는데..


솔직히 header, footer 따로 분리해도 상관없는데..


열고 닫는 태그 재대로 관리 못하는 개발자 및 퍼블리셔들이 너무너무너무너무 너~무 많아서 싫어함;;

( 맨날 깨지는게 수정이 안되는데 어떻게 수정해야할지 모르겠다고해서 보면 열고 닫는 태그가 개판;; 아니 퍼블한다고 하면 이건 기초중에 기초 아닌가? 그리고 제발 들여쓰기도 좀 하자.. 이런애들 특징이 들여쓰기도 초 개판;; <div><p></div></p> 도 본적 있음;; 뭐 닫는 테그만 있다거나, 여는태그만 있는것도 많고;; 수많은 경력 10년 이상차의 개발자라면 누가나가 아는 모 유명 빌더의 스페이스 1번도 유명하고;; )


요즘은 IDE 가 좋아서 앵간하면, 하나의 파일안에 다 있으면 들여쓰기나 열고 닫는 태그 체크해줘서, 왠만하면 레이아웃 방식으로 개발을 진행하는;;

( 그 좋은 IDE 쓰면서도 재대로 코딩 못하는 사람들 많지만;; )


개인적으로 HTML 태그의 BODY 부분만 따로 떼어내는것을 좋아해서;;


제가 사용하는 방식과는 많이(?) 차이가 나서, 저거는 쓰지 않을거 같군요.

( 그냥 부분 캐싱정도만 쓸듯.. )


ps. 베타버전도 나왔으니, 슬슬 기존에 작업하다가 접어둔 CodeIgniter 4 CMS 작업 다시 꺼내와야겠네요.

알파1때 깔짝거리다가, 알파2였나? 그때 갑자기 구조가 많이 바뀌어서, 접고 있었는데..

슬슬 다시 시작해봐야;;

( 그보다 디자이너에게 넘긴 일이 있는데, 요즘 연락이 안되서,, 아이가 열심히 기어다니나.. )


ps2. 개인적으로는 차라리, Controller 에서 레이아웃을 지정하고( 현재도 가능합니다. ), view 함수로 호출한거는 자동으로 section 에 들어가는게 더 좋지 않았나 생각을 해보네요.

content 라는 section 에 자동으로 들어가면 한번에 스무즈하게 진행되는데..

( 근데 이러면 또 CodeIgniter 라는 프레임워크의 디자인 컨셉과는 달라지려나.. )

Posted by Pure Ani

RE:D Cherish! -Eternity Blood- CRYSTALiA

放課後シンデレラ2 HOOKSOFT

花鐘カナデ*グラム NanaWind

フタマタ恋愛 ASa Project

スタディ§ステディ2 ま~まれぇど

リンパにATATA! ~メス牡蠣ミルクどぴゅらっしゅ~ Hending

創作彼女の恋愛公式 Aino+Links

流星ワールドアクター Heliodor

Secret Agent~騎士学園の忍びなるもの~ ensemble

天冥のコンキスタ エウシュリー

HaremKingdom -ハーレムキングダム- SMEE

ラズベリーキューブ まどそふと

ノラと皇女と野良猫ハート2 -Nora, Princess, and Crying Cat.- HARUKAZE

『ノラと皇女と野良猫ハート2』応援中♪

ピュアソングガーデン PULLTOP

はにデビ! Honey&Devil eufonie

姫繰三六五 HIMEKURI365

姫繰三六五 公式ウェブサイト

はるるみなもに! クロシェット

死に逝く君、館に芽吹く憎悪 バグシステム

Sanguinea-サングイネア- すにぃる

麗華の館 しすたーそふと

カスタムメイドオンライン KISS