포럼
메뉴연결구조 혁명적 혁신 방법
2013.03.18 12:52
메뉴구조 혁명적 혁신 방법
회원모듈은 레이이아웃 [미설정] 하면, 여러 레이아웃 사용할때 현재 레이아웃 안에서 출력되어 참 좋아요.
게시판, 페이지 등 다른 모듈들도 레이아웃 [미설정]하면 현재 레이아웃 안에서 출력되게 하면 좋겠어요.
회원모듈도 모듈인데 회원모듈이 되는데, 페이지,게시판 모듈이라고 안될 이유가 없는 거 아닌가요?
이렇게 하면 여러개의 레이아웃 사용시 각기 다른 레이아웃의 메뉴에서 하나의 모듈을 공통으로 사용하고자 할때
대단히 혁신적인 메뉴연결구조가 될 수 있습니다.
메뉴연결 구조에서 [바로가기] 연결 방식으로 사용할때 대단히 유용하게 사용할 수 있습니다.
이슈에 등록은 했는데, 반영되면 참 좋겠습니다.
혁명적 혁신은 안될것 같은 것을 되도록 하는 것입니다.
댓글 15
-
KANTSOFT
2013.03.18 22:16
-
또별
2013.03.19 01:46
운영자가 지정하고 싶으면 지정하고, 미설정 하고 싶으면 미설정 하고 선택적으로 하면 더 좋겠다는 생각이거든요..^*^..
-
컴토피아
2013.03.19 23:38
어려울 것 같습니다...
게시판이나 페이지 모듈은 지정된 레이아웃이 없으면 아얘 빈 화면에 게시판만 떡 하니 나타나는 형태로 표시되겠죠... 실제로 이렇게 미 사용하는 방안으로 '미지정' 이나 '사용 안함'이란 옵션이 존재합니다.
회원 모듈은 특정 실행 중인 모듈 위에서 act=dispXXXX 값으로 그 모듈 위에서 돌아가는 구조이기 때문에 미 지정하면 해당 게시판, 페이지의 지정된 레이아웃을 가져와 띄어줄 수 있지만, 게시판이나 페이지 등의 모듈은 단독적인 형태를 띄고있으니 구조 상 어려울 듯 합니다.
-
또별
2013.03.20 00:40
아하..가능할것 같습니다..모듈의 레이아웃 소스부분을 조건변수로 바꾸고, 메뉴클릭할때 현재의 레이아웃코드를 물고 들어가면 충분히 가능하다고 봅니다. 회원모듈도 모듈이기 때문에 회원모듈이 되는데, 페이지 모듈이라고 안될 이유가 없는거죠...지금 현재는 페이지에 레이아웃 [미설정]하면 레이아웃 없이 페이지만 뜨는데, 이것을 현재의 레이아웃 안에서 출력되도록 하는 것입니다....이런 메뉴연결구조는 혁명적인 최첨단 혁신기술 입니다..원래 안될것 같은 것을 되도록 하는 것이 혁명적 혁신입니다.
-
컴토피아
2013.03.20 00:58
흠... 이것 참 '모듈'이란 의미도 XE에 있어서 조금 난해한 것 같네요...
저는 페이지 자체를 관리하는 포괄적 '모듈'이 아닌 페이지 하나 하나 사용자가 만드는 '모듈'을 말한 것이었습니다. 현재는 페이지 하나 하나의 '모듈'개념에서 레이아웃을 지정하기 때문에... 즉 회원모듈은 그 모듈 위에 올라서 의지해 보여주지만 그 위에 위치한 페이지 자체는 혼자서 돌아가는 단독적인 구조이기 때문에 어디서 레이아웃을 가져오지 못하죠... 고로 설정하지 않으면 랜덤이 아닌이상 보여주질 못합니다.
다만 말씀하신 내용을 미루어 추측해 보았을 때 기존 모듈 별 레이아웃 설정을 메뉴 별 레이아웃 설정으로 옮겨가잔 말씀인 것으로 보입니다. 모듈은 같아도 클릭하는 메뉴에 따라 다르게 설정... 전에는 동일 모듈로 여러 메뉴를 만들면 충돌이 일어나 메뉴 LIST에 중복으로 표기되던데 1.7은 어떤지 모르겠군요.
아무튼 제가 추측하건데 대략 이런말씀이신 것 같습니다 :)
-
또별
2013.03.20 01:16
아함..회원모듈의 레이아웃 미설정 방법은 15x에서 개선되었습니다.. 14x에서는 없었거든요. 그래서 그 근거를 가지고 충분히 가능하다는 방법론을 제안하는 것이지요.^*^..메뉴클릭시 레이아웃 값을 물고 다니게 해서 변수로 받아서 그 값의 레이아웃을 쒸워서 출력시키면 되지 않을까 합니다..회원모듈에 레이아웃 쒸울때 이 방법이거든요..프로그램에서 이정도 안된다면.그것은.프로그램이 아니지 않을까 합니다...즉, 된다고 생각하면 되게끔 될수 있습니다..이것이 되었을때 그 효과는 말할수 없이 대단히 유용합니다..이소룡이 몸을 자유자재로 움직여 상대를 공격하듯..이것이 되면..홈피의 운영자는 자유자재로 홈피를 구성할수 있게 됩니다.
-
컴토피아
2013.03.20 03:14
제가 알고있기론 레이아웃 값이 아니라 모듈 값을 물고 다니면서 그 모듈에 선택되어있는 레이아웃을 가져와 씌우는걸로 알고있어요ㅎ
웹사이트를 자유자재로 꾸밀 수 있다면 그 보다 좋은 것이 어디있겠습니까~ 단, 이런 새로운 개념을 도입한다면 설정할 수 있는 부분은 더 늘어나지만 또 다른 입문자들, 초보자들은 어려워 할 수 있기 때문에 중간 타협점을 찾아야 하지요 ^^& 일단 저로서도 '자유자재'로 꾸밀 수 있다면 더 행복할 것 같습니다 :)
그 전에... 사이트 맵 좀... 사이트 맵 부터가 다소 자유롭지가 않군요ㅠㅠ
-
또별
2013.03.20 12:49
지금까지 복잡한 내용을 한줄로 간단히 요약하면
모듈의 레이아웃을 [미설정] 하면, 모듈호출시 현재 레이아웃 값으로 쒸워주면 되요.초간단. -
컴토피아
2013.03.20 16:43
현재 레이아웃이라... 간단한 문제는 아닙니다. 그 모듈에 지정된 레이아웃이 없는데 어디서 레이아웃을 가져올까요? 현재 구조에서는 랜덤으로 가져오는 식의 방법 빼고는 방법이 없습니다.
뭔가 오해하고 계신 듯 한데 회원모듈은 지금 실행 중인 모듈 값의 mid 값을 파악해서 그 모듈이 가지고 있는 레이아웃 씌워주는 구조라서요. 결국 모듈에 레이아웃 지정이 되어있지 않는다면 회원모듈도 레이아웃 없이 그냥 하얀화면에 회원 정보만 떡 하니 나오게 됩니다.
현재 레이아웃을 가져와 표시하는 방식이 아니라 그 모듈이 가지고 있는 레이아웃 값을 가져와 보여주는 방식입니다. 현재 레이아웃이란 기준이나 설정값이 최종적으로 없는데 가져오는 건 인공지능이나 랜덤 빼고는 불가능하죠...
-
또별
2013.03.20 22:04
알고리즘은 아주 간단해요. 지금 현재 보고있는 레이아웃시리얼값을 적용하면 되는데요.그래도 복잡한가요?
-
컴토피아
2013.03.20 22:56
앞서 말씀드렸는데도 이해를 잘 못하시는 것 같아 그림을 첨부하여 설명드릴까 합니다... 뭔가 다소 오지락이 넓은 행위(?)인 것 같긴 하지만 이렇게 알아두어서 더 좋은 아이디어나 정확한 제안 등을 하신다면 XE와 또별님께도 도움이 되지 않을까 싶어서요ㅎ
현재 또별님께서는 현재의 회원 모듈의 레이아웃: 미 사용 설정을 다음과 같은 구조로 이해하고 계신 듯 합니다. 그래서 이전 페이지에서 사용하던 레이아웃을 그대로 가져와 사용하면 된다고 생각하고 계시겠죠.
하지만 실제 XE의 구조는 위과 같습니다. 사용 중인 레이아웃이 없다면 저렇게 실행 중인 모듈에서 레이아웃 코드를 가져와 띄워주는 방식입니다.
즉 회원 모듈은 mid=abc&act=dispMemberLoginForm 으로 기준이 되는 mid 값 위에서 돌고 있지만 모듈은 mid 값 혼자로, 즉 단독으로 실행이 됩니다. 그 상태에서 의지할 모듈이 없다면 레이아웃 값도 의지하거나 요청할 곳 없이 결국 레이아웃이 없는 보드만 순수하게 나타나는 상황이 나오겠죠.
제가 말씀드리고 싶었던 것이 이거였습니다. 부디 조금이라도 이해가 되시는 것에 도움이 되셨길 바랍니다 :)
그리고 마지막으로, 제 글이 조금이라도 태클이나 공격적으로 보여졌다면 죄송합니다 ( _ _ );;
-
또별
2013.03.21 01:12
컴토피아님..정성스러운 설명 정말 감사해요..저는 프맹인지라..실제 구현보다 이론적으로만 가능하겠다 생각하고 있는거죠..컴토피아님의 예시에서 하단의 첫문장 [ "즉 회원 모듈은 mid=abc&act=dispMemberLoginForm 으로 기준이 되는 mid 값 위에서 돌고 있지만 모듈은 mid 값 혼자로, 즉 단독으로 실행이 됩니다"] 이거 이해하며, 위에 모든글도 이해해요..----------그런데..==실제로==로그인박스 폼의 "회원가입" 링크를 보면...[getUrl('act','dispMemberSignUpForm')] 와 같이 mid없이 act와 핸들러만 있잖아요...,,,, 레이아웃이 미설정된 회원모듈이 현재의 레이아웃의 contents변수에 들어가죠..==모듈에 레이아웃 [미설정] 된 전제로 이야기중임---- 중요한 것은, 레이아웃이 미설정된 회원모듈은 어느 파일에서 현재의 레이아웃을 쒸워줄까요? 이부분의 소스(현재 레이아웃을 뒤집어쓰는 소스)를 찾거나 아니면 레이아웃을 미설정 했을때 호출된 회원모듈이 contents변수로 바로 기어들어가게 하는 소스를 찾으면 해결책을 쉽게 찾을수 있을것 같아요.^*^..
-
컴토피아
2013.03.21 03:24
아... 회원가입 링크의 부분 [getUrl('act','dispMemberSignUpForm')] 부분은 기존 링크에서 가져와 act=dispMemberSignUpForm 을 추가적으로 붙이라는 XE 함수(맞나?ㅎㅎ;;)로 실제 해당 링크를 확인해보면, 자신이 위치해 있는 mid 값이 붙은 채로 이동하게 됩니다. 그 외에도 회원가입을 하다가 돌아가거나 가입 후 기존 페이지로 돌아가는 등 해당 act를 빠져나올 때 기존 페이지로 돌아가기 위해 링크를 남겨두기 위한 목적으로도 활용됩니다.
그렇기 때문에 현재 사용자가 위치한 모듈 값을 가져와 그 모듈의 레이아웃을 씌어줄 수 있는거지요 :)
저도 프맹인지라... 자세히는 모릅니다ㅎㅎ;; 그래도 일단 대략적인 XE의 구조들은 알고 있기에... 위의 구조로 인해 현재 말씀하신 내용은 어렵지만 위와 같은 XE의 구조를 바꾼다면 가능할 지도 모르겠네요.
-
또별
2013.03.21 01:27
그런데, 컴토피아님..'dispMemberSignUpForm' 이것보고 핸들러라고 하는게 맞나요..아니면 크래스 라고 하나요?
-
컴토피아
2013.03.21 03:24
흠... 저도 그 부분에 대해선 자세히 모르겠네요 ^^;;
전 레이아웃을 지정이 좋더군요. 메인과 서브가 똑같으나 메인에서 슬라이드가 동작할때.. 슬라이드때문에 회원가입창이 아래로 나오더군요. 그래서 member모듈도 레이아웃 지정되게 패치되서 참 좋았죠
이젠 검색모듈도 레이아웃지정가능하도록 했으면 좋겠네요.