문제
rows.xml ()를 사용하여 HTML 출력을 생성했습니다. 이 생성 된 HTML 페이지에 HTML 코드를 추가하는 방법을 알고 싶습니다 : "로고 추가, 링크 CSS 파일 등"
rows=db(db.member.membership_id==request.args[0]).select(db.member.membership_id
,db.member.first_name,db.member.middle_name
,db.member.last_name)
return rows.xml()
해결책
예를 들어 사용할 수있는 많은 HTML 도우미가 있습니다.
html_code = A('<click>', rows.xml(), _href='http://mylink')
html_code = B('Results:', rows.xml(), _class='results', _id=1)
html_page = HTML(BODY(B('Results:', rows.xml(), _class='results', _id=1)))
등등.
전체 테이블을 자동으로 만들 수도 있습니다.
table = SQLTABLE(rows, orderby=True, _width="100%")
그런 다음 링크를 삽입하거나 요소를 수정하기 위해 간격을 선택하십시오.
그것은 매우 강력하고 일반적으로 실제 HTML을 직접 쓰는 것을 귀찮게 할 필요는 없습니다. 다음은 치트 시트입니다, 또는 직접 확인할 수 있습니다 웹 사이트 문서.
편집 : 확인하기 위해 실제로 전체 HTML 페이지를 생성 할 필요는 없으며 Web2Py가 컨트롤러와 동일한 이름을 가진 템플릿에 응답을 삽입하는 것이 더 쉽습니다 (또는 특정 템플릿을 강제로 강제로 삽입하십시오. response.view = 'template.html'
. 문서 자습서는 더 나은 자세한 내용을 설명합니다.
몇 마디로 함수를 구현하는 경우 index
, 당신은 문자열 (전체 페이지 html, 당신이 향하고있는 것 같습니다) 또는 템플릿을 사용하는 사전을 반환 할 수 있습니다.
첫 번째 경우에는 다음과 같은 기능을 코딩합니다.
def index():
# ... code to extract the rows
return HTML(BODY(B('Results:', rows.xml(), _class='results', _id=1))).xml()
그렇지 않으면보기에 HTML 템플릿을 작성//제어 장치/index.html (또는 다른 파일을 삽입하면 response.view=...
기능에서 동일한 템플릿을 재사용하려면 다음과 같습니다.
<html><head></head>
<body>
{{=message}}
</body>
</html>
사전 반환 :
def index():
# ... code to extract the rows
html = B('Results:', rows.xml(), _class='results', _id=1)
return dict(message=html)
다른 팁
그 줄에 그것을 선발/첨가하십시오 rows.xml()
보고:
html = '<html><head>...</head><body>' + rows.xml() + '</body></html>'