我正试图用webpy在我自己开发的博客中进行分类 我试着做:
mywebpage.com/c/categorieName
是显示分类的输入(比如别名?¿?) 你知道吗
urls = (
'/c/(.*)','index'
)
那么索引类是:
class index(object):
def GET(self,cat):
seleccion = functions.categoria(db,cat)
#seleccion = db.select('contenido',what="*",order="modificado DESC")
#print seleccion
return render.index(seleccion.getThread(),cat)
我有一个.py文档,其中包含一些帮助功能:
class categoria(object):
def __init__(self,datab,nombre='frutas'):
'''
Selecciona y asigna una lista o diccionario
con el contenido de la base de datos dispuesto en
objetos de la clase noticias.
'''
self.datab = datab #objeto database
self.nombre = nombre #cadena con el nombre de la categoria
self.n = self.getCat() #calculo del numero de la categoria PROBLEMAS
self.thread = self.getThread()
def getCat(self):
''' returns the categorie number stored in the database
'''
a = self.datab.select('categorias',where='catName = $nombre', vars=dict(nombre=self.nombre))
return a[0].catId
def getThread(self):
myvars = dict(numero= '%'+str(self.n)+'%' )
d = self.datab.query("SELECT * FROM contenido WHERE category LIKE $numero", vars= myvars)
#what="contentTitle,content,'update'",
return d
# db.query("SELECT * FROM foo WHERE x = $x", vars=dict(x='f'), _test=False)
def __str__(self):
'some more code, doesn't matter'
我已经正确配置了mysql数据库,并且包含示例内容。 我尝试在功能中运行它,但我得到的最佳结果是为variablecat设置一个默认值,该值不允许我使用browsers direction功能更改视图中的类别。你知道吗
非常感谢。你知道吗
也许问题出在
seleccion.getThread
调用的结果上。你知道吗在webpy中
db.query
返回web.iterbetter
,您只能迭代一次。您可以尝试返回d.list()
而不是d
,它将web.iterbetter
转换为list
。你知道吗UPD:也许我不明白你的问题,所以这是另一个尝试:
'/c/(.*)','index'
映射意味着category可以为空,因此您可以在GET函数中设置如下默认值:def GET(self,cat=None):
或者将映射更改为'/c/(.+)','index'
,这样它就不会使用'/c/'
请求路径。你知道吗相关问题 更多 >
编程相关推荐