CI 묻고 답하기

제목 코드이그나이터에서 view html(php) 간 이동은 반드시 controller를 거쳐야 하나요?
글쓴이 피스트 작성시각 2012/08/27 01:00:13
댓글 : 5 추천 : 0 스크랩 : 0 조회수 : 22818   RSS
 html페이지에서 a href 또는 자바스크립트의 location.href 함수를 써서 페이지 이동할 때
반드시 /class/function 식으로 CI 식 주소를 입력하고 한번 컨트롤러를 거쳐서-> view를 호출하는 방식으로 페이지를
이동하는 방식 말고 그냥 바로 기존 웹 날코딩처럼  /test/abc.html 이런식으로 주소를 기입하는 방식도
사용가능한가요?
저말고 UI 담당하는 팀원은 코드이그나이터를 배우지 않아서요. UI(html+ java scrpit)는 기존 날코딩 방식대로 가고 밑단만 제가
코드이그나이터로 짜고 코드받아서 각 폴더에 맞게 배치하려고 하고 있습니다..
 다음글 서브폴더 접근 방법...? (5)
 이전글 실행이 안됩니다 한번 봐주세요 (2)

댓글

헛발이 / 2012/08/27 08:22:41 / 추천 0
URL에서 명시되는 주소는 기본적으로

http://도메인/콘트롤러/메소드

입니다.. 즉 URL로 페이지를 열게 되면 콘트롤러를 반드시 걸쳐야 한다는것이죠..


그건 그렇치만 View가 반드시 콘트롤러에서만 가능한것은 아니랍니다.

모델에서도 라이브러리에서도 핼퍼에서도 어디서건

$this->load->view(''뷰의위치Path');

만을 해 주시면 어디서든지 View의 내용을 로딩 할수 있답니다.


그러니 결론은 URL의 주소가 View가 아니라는것입니다.

URL에서 가르키고 있는것이 콘트롤러고 그 컨트롤러가 뷰를 가르키게 되는것이죠...

location.href  이것으로 /test/abc.html 로 보내는것은 가능합니다.

단지 코드이그나이터 방식을 쓰지 않고 건너띄면 되죠..

즉 디랙토리가... 저 같은 경우는 아래와 같습니다.


Server
     application
     system
     public
          css
          js
          index.php


이렇게 되어 있습니다만 코드이그나이터를 쓰지 않고 바로 단독으로 html을 쓴다면

Server
     application
     system
     public
          css
          js
          index.php
          test
               abc.html

이렇게 해 놓고 직접 부르면 됩니다..
그렇게 되면 URL은

http://도메인/test/abc.html 로 부를수 있죠..

하지만 단점은 코드이그나이터의 리소스를 사용할수 없게 됩니다.
코드이그나이터를 걸치지 않고 그냥 사용하는것이 되기 때문이죠...

언젠가 게시판에서 봤는데 일반 PHP에서 강제적으로 리소스를 사용할수 있도록 해 방법이 있다고
본적이 있는데 함 찾아 보시기 바랍니다..
kaido / 2012/08/27 10:39:05 / 추천 0
피스트님.

한명의 날코딩 때문에 따로 빼서 쓰는건 정말 좋지 못한 방법이라 생각 됩니다.

급하기 때문에. 디자이너가 소스를 못봐서. 팝업 메세지를 공용으로 보여줄려고.

여러가지 이유가 있겠지요.

그런데 그게 다 나중엔 문제점을 낳게 됩니다.

나중에 누가 보면 "어? 앤(예외로 만든 파일) 뭐야?" 이말 반드시 나오게 됩니다.

또한 날코딩의 html+script 를 넣으셔야 겠다면 컨트롤러 메소드에서 html 을 넣어버리고 

리턴시켜 버리면 통째로 가져올수 있습니다.
한대승(불의회상) / 2012/08/27 10:51:51 / 추천 0
CI도 APM 위에서 작동하는 방식이므로 ftp로 업로드 하고 바로 웹브라우져에서 볼 수 있습니다.

단, 위 2분이 언급하신 것처럼 CI에서 뷰나 라이브러리 호출하는 것처러 사용하지는 못합니다.

담당팀원에게 폴더 하나 만들어 주시고 그쪽에 관련 리소스 업로드 한 후 테스트 하라고 하시면 됩니다.

당연하겠지만...
폴더명이 작성하고 계시는 CI프로젝트의 컨트롤러와 충돌하면 안되겠지요. ^^
변종원(웅파) / 2012/08/27 10:57:16 / 추천 0
프레임워크를 사용하는 이상, 기존 방식은 버리시는 것이 좋습니다.

새로운 개발방법론이던지, 새로운 개발환경이던지 초기에 마찰은 있을 수밖에 없습니다.
마찰이 있다고 기존 방식과 혼용을 하면 이도저도 아닌게 되어 버립니다.

새 시스템이 도입이 되면 새 시스템에 맞추는 것이 맞습니다. 밀고 나가야 합니다.
피스트 / 2012/08/27 18:43:11 / 추천 0
 다들 좋은 답변 감사드립니다.
한번 밀고나가봐야겠습니다