질문/조언질답게시판

몇일 전부터 시험 모듈과 씨름 중입니다. ㅠ_ㅠ

 

포인트 히스토리 관련된 검색은 쿼리?? xml에 member가 이미 있어서 검색 종류 추가가 쉬웠는데요...

시험은 어떻게 해야 할지 모르겠습니다.

 

 

포인트 히스토리 모듈에서는...

 

  <tables>
        <table name="member" alias="member" />

......

    <columns>
        <column name="member.nick_name" />

......

 

요 부분이 있어서 

        <condition operation="like" column="member.extra_vars" var="team" pipe="and" />

요렇게 하나 추가해줘서 검색 관련된걸 추가했었습니다.

 

그런데 ..

 

시험 모듈에서는 저 부분이 없어서 .. 저 부분을 추가하면 .. 

리스트에 나오는 사람들 정보가 전부 이상하게 바뀌어 버리네요....

 

혼자 공부하면서 하려니.. 기초가 부족해서 못하는거 같아요..

 

 

아래는 시험 모듈에 대한 리스트 생성 및 검색 관련된 내용 xml 입니다.

힌트 좀 부탁드립니다. ㅠㅠ

 

<query id="getResultList" action="select">
    <tables>
        <table name="exam_result" alias="result" />
        <table name="exam" alias="exam" />
    </tables>

    <columns>
        <column name="result.*" />
        <column name="exam.title" />
        <column name="exam.result_type" />
    </columns>
    <conditions>
        <condition operation="equal" column="result.member_srl" var="member_srl" pipe="and"/>
        <condition operation="equal" column="result.module_srl" var="module_srl" pipe="and" />
        <condition operation="equal" column="result.document_srl" var="document_srl" pipe="and" />
        <condition operation="equal" column="result.status" var="status" pipe="and" />
        <group pipe="and">
            <condition operation="equal" column="result.correct_count" var="correct_count" filter="number" />
            <condition operation="more" column="result.correct_count" var="correct_count_more" pipe="and" />
            <condition operation="less" column="result.correct_count" var="correct_count_less" pipe="and" />
        </group>
        <group pipe="and">
            <condition operation="equal" column="result.score" var="score" filter="number" />
            <condition operation="more" column="result.score" var="score_more" pipe="and" />
            <condition operation="less" column="result.score" var="score_less" pipe="and" />
        </group>
        <group pipe="and">
            <condition operation="more" column="result.regdate" var="regdate_more" pipe="and" />
            <condition operation="less" column="result.regdate" var="regdate_less" pipe="and" />
        </group>
        <condition operation="equal" column="exam.document_srl" var="result.document_srl" notnull="notnull" pipe="and" />
    </conditions>
    <navigation>
        <index var="sort_index" default="result.regdate" order="sort_order" />
        <list_count var="list_count" default="20" />
        <page_count var="page_count" default="10" />
        <page var="page" default="1" />
    </navigation>
</query>
 

  • profile
    시험 모듈도 마찬가지로 하시면됩니다.

    다만 member를 조인시킬때 시험모듈의 member_srl을 검색해서 회원의 정보를 가져올 수 있도록 하셔야 해요.

    그런다음 위에 님께서 작성하신것처럼 검색할 수 있도록 and 조건절로 추가하시면 될걸요?

    https://xe1.xpressengine.com/dev_guide

    자세한 xml 쿼리문법은 개발자 문서에 잘 나와있어요.
  • profile profile
    파일 모듈을 보면서 ... 따라해보았으나 방법이 틀렸나 봐요 ㅠㅠ

    <query id="getResultList" action="select">
    <tables>
    <table name="exam_result" alias="result" />
    <table name="exam" alias="exam" />
    <table name="member" type="left join">
    <conditions>
    <condition operation="equal" column="result.member_srl" default="member.member_srl" />
    </conditions>
    </table>
    </tables>

    <columns>
    <column name="result.*" />
    <column name="exam.title" />
    <column name="exam.result_type" />
    <column name="member.nick_name" />
    </columns>

    <condition operation="like" column="member.extra_vars" var="team" pipe="and" />
  • profile
    해결했습니다. 감사합니다. ^-^