내 응용 프로그램은 Zope 2.12.19 및 Python 2.6.5에서 실행됩니다.Zope 페이지 템플릿 메타 데이터를 읽을 수 없습니다.
pagetemplate.pt.metadata
파일에 액세스 제한이 정의 된 페이지 템플릿 파일 pagetemplate.pt
이 있습니다. 이러한 접근 제한은 Zope Products의 웹 페이지를 제외한 모든 웹 페이지에 적용되고 올바르게 작동합니다. .metadata
파일의
내용은 다음과 같습니다 :
[default]
title=
[security]
View=0:Authenticated,Manager,Owner,User
Access contents information=0:Authenticated,Manager,Owner,User
예를 들어, 시스템의 모든 사용자를 나열하는 조프 제품이이 위의 페이지 템플릿을 사용합니다. 사용자는 로그인하지 않고 익명으로이 페이지에 액세스 할 수 있으며 이는 메타 데이터 파일이 읽히지 않음을 의미합니다.
그러나 제품 외부의 다른 페이지에 액세스하려면 응용 프로그램에서 사용자가 로그인해야합니다. .metadata
개의 파일을 읽는 제품에 문제가 있습니까?
FYI - 저는 ZODB를 사용하지 않습니다 ... 대신 모든 것이 (소스 코드) 파일 시스템에 있습니다.
configure.zcml
의 내용은 다음과 같습니다.
<configure
xmlns="http://namespaces.zope.org/zope"
xmlns:five="http://namespaces.zope.org/five"
xmlns:browser="http://namespaces.zope.org/browser"
i18n_domain="AMSPermissions">
<!-- the users manage page -->
<browser:page
for="OFS.interfaces.IFolder"
name="manage-users"
template="standard_template.pt"
class=".users.UsersView"
permission="zope2.View"
/>
<!-- permissions checker -->
<browser:page
for="OFS.interfaces.IFolder"
name="perm_check"
class=".permissions.PermissionsCheckerView"
permission="zope2.View"
allowed_interface=".interfaces.IPermissionsCheckerView"
/>
</configure>.
또한 아래는 제품의 샘플 코드입니다.
<html metal:use-macro="context/standard_template/macros/page">
<metal:block fill-slot="heading">Users Overview</metal:block>
<metal:block fill-slot="body" tal:define="users view/get_users">
---------Some code--------
</metal:block>
</html>
이러한 페이지 템플릿은 스킨에 정의되어 있습니까, 아니면 브라우저보기에서 사용됩니까 (예 :'configure.zcml'에서 정의)? –
이들은 브라우저보기와 함께 사용됩니다. 예를 들어, configure.zcml에 정의 된 list-users.pt는 페이지 템플리트 파일에 액세스합니다. – Ravi