Форум сайта python.su
Привет друзья!
Я относительно новый человек в мире Zope/Plone. Есть следующая задачка
по кустомайзингу Plone сайта.
В portal_memberdata создал строковое поле - graduation. Модифицировал
join_form и personallize_form, примерно так, join_form:
…
<div class=“field”
tal:define=“graduation request/graduation | nothing”>
<label for=“graduation” i18n:translate=“label_graduation”>Year
of Graduation</label>
<div class=“formHelp” i18n:translate=“help_graduation”>
Help string.
</div>
<select name=“graduation”
id=“graduation”
tabindex=“”
tal:attributes=“tabindex tabindex/next”>
<tal:block tal:repeat=“year python:xrange(1980,2011)”>
<option tal:condition=“python:year != ‘None’”
value=“None”
tal:attributes=“value year;
selected
python:test(year==graduation, ‘selected’, None);”
tal:content=“year”>
Year of Graduation
</option>
</tal:block>
</select>
</div>
…
и реrsonalize_form соответственно:
…
<div class=“field”
tal:define=“graduation
python:request.get('graduation',
member.getProperty('graduation',''))”>
<label for=“graduation”
i18n:translate=“label_graduation”>Year of Graduation</label>
<div class=“formHelp”
i18n:translate=“help_graduation”>
Help string.
</div>
<select name=“graduation”
id=“graduation”
tabindex=“”
tal:attributes=“tabindex tabindex/
next;
disabled python:member.canWriteProperty('graduation') and
default or ‘disabled’”>
<tal:block tal:repeat=“year
python:xrange(1980,2011)”>
<option tal:condition=“python:year !=
'None'”
value=“None”
tal:attributes=“value year;
selected
python:test(year==graduation, ‘selected’, None);”
tal:content=“year”>
Year of Graduation
</option>
</tal:block>
</select>
</div>
…
Вопросы/проблемы:
1. На join_form я могу безпроблем выбрать год в поле graduation, но
выбранный год не отображается на personalize_form, там 1980 все время.
Я так понял ошибка где то тут:
<select name=“graduation”
id=“graduation”
tabindex=“”
tal:attributes=“tabindex tabindex/
next;
disabled python:member.canWriteProperty('graduation') and
default or ‘disabled’”>
<tal:block tal:repeat=“year
python:xrange(1980,2011)”>
<option tal:condition=“python:year !=
'None'”
value=“None”
tal:attributes=“value year;
selected
python:test(year==graduation, ‘selected’, None);”
tal:content=“year”>
Year of Graduation
</option>
</tal:block>
</select>
но не могу понять почему и как ее исправить.
2. Как сделать поле graduation из portal_memberdata индексированым,
что бы можно было вести поиск членов портала по данному полю?
Пока все и заранее спасибо.
Офлайн