CI 묻고 답하기

제목 CSS 로딩에 관한 질문 드려요.
글쓴이 회땡겨 작성시각 2010/07/13 15:05:33
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 23682   RSS
안녕하세요.
이제 막 CI를 익히고 있는데요.

게시판을 만들고 있는데
view에서 상단영역인 top.php 이 있고,
글쓰기 write.php와 리스트 list.php가 있다고 가정할 때
글쓰기를 스타일을 담당하는 write.css와 리스트를 담당하는 list.css가 있다고 하면요.

<head>부분이 top.php에만 있는데,
write.php에서는 write.css만 로드하고, list.php에서는 list.css만 로드하고 싶습니다.

write.php와 list.php는 <body> 내에 속하는 부분 코드만 들어가는데 css를 각각 다르게 어떻게 로드해야 할 지 모르겠습니다.

도움 부탁드립니다.(__)
 다음글 코드이그니터로 mysql4.0의 사용법을 ㅡㅠ.. (2)
 이전글 ie브라우져 접근시 문제.. (7)

댓글

변종원(웅파) / 2010/07/13 15:46:38 / 추천 0
ci나 php 코딩과는 상관이 없는 로직에 대한 부분이네요.
일반적인 native php코딩이나 ci나 mvc패턴으로 컨트롤러, 모델, 뷰가 나눠있느나 아니냐의 차이이지
css include의 개념은 똑같습니다.

ci를 처음 하시는 분들이 범하기 쉬운 오류가 그전에 하던 방식이나 ci나 로직은 똑같은데
ci는 뭔가 다를거라고 생각하시는 겁니다.

native php에서 write.php에 write.css를, list.php에 list.css를 top.php에서 로드하려면 어떻게 했을까요?

위에서 했던 방식 그대로 if문 작성하고 if문 안의 조건만 ci의 구문으로 바꿔주면 됩니다.

controller가 다를 수도 있고 컨트롤러는 동일하게 쓰고 method를 다르게 하여 쓰기와 리스트를 구분할 수 있겠죠.

만약 컨트롤러가 write.php, list.php라고 하면

top.php 안에서
if($this->uri->segment(1) == 'write') {
    // write.css 선언
}

이렇게 해주시면 됩니다.

$this->uri->segment(1) <- 이 부분은 매뉴얼 참고하세요. 아니면 직접 echo 로 찍어보시면 무슨 값인지 알수있습니다.
회땡겨 / 2010/07/17 11:44:27 / 추천 0

고맙습니다.
더 열심히 공부해야겠어요.^^;