Форум сайта python.su
Всем привет!
1) В DTML-методе я устанавливал первоначальное значение для Input используя <dtml-var…>:
…
<input value=“<dtml-var s_login>” name=“s_login”>
…
И это нормально работало!
Попробовал использовать Page template и не смог сделать того же:
Делал так:
…
<input value=“<span tal:attributes="replace/form/s_login" ></span>” name=“s_login”>
…
И в html-форие в input-е я вижу “<span tal:attributes=”replace/form/s_login“ html_qoute></span>”
Получается ято value=“< TAL-construction >…” не рендерится? Я просмотрел ZooBook и не нашел никаких примеров
использования TAL-construction внутри value=“”… Эито возможно? Если да то как?
2) В zope-форме as DTML method I used ccs which is is inside DTML Document. All working is fine.
Tried to use Page Template and could not make the same. Called standart header:
…
<span html_quote tal:replace=“standard_html_header_pt” ></span>
…
In which was css was called:
…
<span tal:replace=“css”></span>
…
И получаю ошибку в форме :
Error Type: KeyError
Error Value: ‘standard_html_header_pt’…
НО при этом страница действительно отображается с моими css-настройками:шапка, подвал, background, картинки?!?
Что неправильно?
С уважением,
Нилов Сергей.
Офлайн
1) <input tal:attributes=“value string:<span name="${replace/form/s_login}"></span>”>
2) standard_html_header_pt и css у тебя в шаблоне определены через tal:define? Если они просто лежат в папке, то обращаться к ним надо через here/standard_html_header_pt или context/standard_html_header_pt
PS В чужой монастырь со своим уставом не лезут. Забудь про standard_html_header_pt. Юзай макросы. Смотри примеры в CMF.
Офлайн
albert, спасибо с Value получилось!
Скачал CMF-2.1.0-alpha2 - она на сайте последняя Скинул в каталог продуктов и ничего…
В “Control_Panel/Products” никакого CMF не добавилось… В логе ошибок нет…
В инструкции по установке читаю: “Requirements - Zope v. 2.10.0 or later…
3. Restart Zope; verify that the CMF products loaded
property, by examining them in Control_Panel/Product. ”
У меня Zope v. 2.10.1 ? Насколько CMF строг в версии Zope? Из-за чего может быть проблема?
А как сделать ссылку с картинкой на текущий елемент?
Пробую так:
<td > <a href=“EmployeeEdit?pin_code=<span tal:replace="repeat/item/pin_code">0</span>”><img src=“images/edit”></a> </td>
…
В результате текст в href=" не обрабатывется и я получаю простой текст… А как правильно?
Офлайн
NilovSergeА ты точно уверен, что скинул в папку с продуктами zope-instance/Products? Изначально она должна быть пуста.
Скинул в каталог продуктов и ничего…
Офлайн
да разобрался я и с CMF и с ZPT…
albert, а еще пару вопросов:
1) В Sql-методах используя DTML я писал :
Insert into employees( pin_code… )
Values( <dtml-sqlvar pin_code type=string>, … )
…
То есть указывал dtml-синтакс. А если я пользую ZPT и хочу отказаться от dtml-синтакса? Какой синтаксис мне исользовать?
2) Ткни пожалуйста где в примерах в CMF используются макросы для определения css… так слету не разберешься…
Офлайн
NilovSergeНе стоит полностью отказываться от DTML. ZPT подходит только для генерации xml подобных страниц, а DTML для всего остального. SQL синтаксис не основан на xml, к тому-же у DTML есть очень удобные конструкции для постоения SQL запросов, к примеру:
То есть указывал dtml-синтакс. А если я пользую ZPT и хочу отказаться от dtml-синтакса? Какой синтаксис мне исользовать?
SELECT DISTINCT d.*, s.title as section_title FROM dev d, dev_s s <dtml-sqlgroup where> s.id = d.section <dtml-and> <dtml-if "_.int(section) != -1"> d.section = <dtml-sqlvar section type=int> </dtml-if> <dtml-and> <dtml-if "_.int(year) != -1"> d.year = <dtml-sqlvar year type=int> </dtml-if> </dtml-sqlgroup>
NilovSergeвырезка из /portal_skins/zpt_generic/main_template
2) Ткни пожалуйста где в примерах в CMF используются макросы для определения css… так слету не разберешься…
<metal:macro metal:define-macro="master"> <!--определение макроса всей страницы--> <!--..........--> <!-- определение стилей, которые используются на всех страницах --> <link rel="stylesheet" type="text/css" href="zpt_stylesheet.css" tal:attributes="href here/zpt_stylesheet.css/absolute_url" /> <link rel="stylesheet" type="text/css" href="CalendarStyle.css" tal:condition="here/CalendarStyle.css|nothing" tal:attributes="href here/CalendarStyle.css/absolute_url" /> <!-- определение макроса стилей отдельных страниц --> <metal:slot define-slot="style_slot" />
<!--подключение главного макроса шаблона--> <html metal:use-macro="context/main_template/macros/master"> <body> <metal:slot metal:fill-slot="style_slot"> <!-- определение стилей данной страницы --> </metal:slot> <metal:slot metal:fill-slot="main"> <!--Тело страницы--> </metal:slot> </body> </html>
Офлайн
спасибо, albert, вроде разобрался
А вот такой еще вопрос в каталоге CFM/docs/ есть куча текстовой доки например Tour.stx и такого вида содержанием:
…
This kind of simple workflow is built right into the CMF. Let's
look at the last news item Fred created:
<screenshot>
Notice the *Submit* link on the left. When Fred clicks this link,
Zope will submit this news item for review. When Janet logs in,
she gets a special message that tells her if she has any pending
items:
<screenshot>
…
Я так понимаю что должна быть и нормальная дока по CFM и с картинками?
По ссылкам в http://www.zope.org/Products/CMF/docs пошлялся - ничего путного не нашел - куча мелких статей…
Офлайн
NilovSerge, я не читал эти доки, т.к. в них очень мало полезной информации. На мой взгляд самый удобный способ - метод “научного тыка”. Если мне что-то не понятно, то я смотрю исходники, которые делают аналогичные действия, или лазию по исходникам необходимого модуля. Там все функции популярно описаны и легко понять какой функцией надо пользоваться.
Офлайн