Форум сайта python.su
всем привет,
разбираю как работает пример wiki20 на сайте по turbogear.
сделал простую свою модель:
class Material(SQLObject):
name = UnicodeCol(dbEncoding="cp1251")
unit = UnicodeCol(dbEncoding="cp1251")
type_material = UnicodeCol(dbEncoding="cp1251")
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://purl.org/kid/ns#"
py:extends="'master.kid'">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" py:replace="''"/>
<title>Editing - 20 Minute Wiki</title>
</head>
<body>
<div id="main_content">
<div style="float:right; width: 10em">
Editing <span py:replace="material.name">Page Name Goes Here</span>
<br/>
You can return to the <a href="/">FrontPage</a>.
</div>
<form action="save" method="post">
<input type="hidden" name="materialid" value="${material.id}"/>
<textarea name="name" py:content="material" rows="10" cols="60"/>
<input type="submit" name="submit" value="Save"/>
</form>
</div>
</body>
</html>
def edit(self, id):
materials = Material.byId(id)
return dict(material = materials)
materials = Material.byId(id)
AttributeError: type object 'Material' has no attribute 'byId'
@expose("flat.templates.material_edit")
def edit(self, id):
materials = Material.selectBy(id = id)
return dict(material = materials)
File "c:\Documents and Settings\user\workspace\1\src\flat\flat\templates\material_edit.py", line 67, in _pull
AttributeError: 'SelectResults' object has no attribute 'name'
Error location in template file 'c:\\Documents and Settings\\user\\workspace\\1\\src\\flat\\flat\\templates\\material_edit.kid'
between line 11, column 20 and line 12, column 12:
... <span py:replace="material.name">Page Name Goes Here</span>
Отредактировано (Авг. 29, 2008 12:24:39)
Офлайн
вкратце на странице http://docs.turbogears.org/1.0/Wiki20/Page3
есть код :
@expose(template="wiki20.templates.edit")
def edit(self, pagename):
page = Page.byPagename(pagename)
return dict(page=page)
Отредактировано (Авг. 29, 2008 12:28:12)
Офлайн
page = Page.get(id)
Офлайн
PooHСпасибо. в английском не силен. читал, но не все понял..
Прочитайте же наконец эту проклятую доку по SQLObject smile
Офлайн
qmanqman, там одно предложение - пример кода. короче - не сложно
Спасибо. в английском не силен. читал, но не все понял..
Офлайн