私はここで見つける私のウェブサイトのためのAjax検索スライスを使用しようとしている:http://www.web2pyslices.com/slices/take_slice/51web2pyのAjaxの検索
しかし、私はエラーを取得しておく何らかの理由:ここで
IndexError: list index out of range
は私のバージョンです
default.py(コントローラ)
def index():
listings = db().select(db.listing.ALL, orderby=db.listing.first_name)
return dict(listings=listings, livesearch=livesearch())
def livesearch():
partialstr = request.vars.values()[0]
query = db.listing.title.like('%'+partialstr+'%')
listings = db(query).select(db.listing.title)
items = []
for (i,listing) in enumerate(listings):
items.append(DIV(A(listing.title, _id="res%s"%i, _href="#", _onclick="copyToBox($('#res%s').html())"%i), _id="resultLiveSearch"))
return TAG[''](*items)
:コードlayout.htmlに
livesearch.html Iは{{など}}だ(ビュー、
<input type="text" id="search" name="search" autocomplete="off" onkeyup="getData(this.value);" /><br />
<div id="ajaxresults"></div>
db.py(モデル)
db.define_table(auth.settings.table_user_name,
Field('first_name'),
Field('last_name'),
Field('email'),
Field('password','password', length=512, readable=False, label='Password'),
Field('title'),
Field('photo','upload'),
Field('bio','text'),
Field('phone'), # Contact details
Field('website'),
Field('address'),
Field('registration_key', length=512,
writable=False, readable=False, default=''),
Field('reset_password_key', length=512,
writable=False, readable=False, default=''),
Field('registration_id', length=512,
writable=False, readable=False, default=''),
)
listing = db[auth.settings.table_user_name]
すべてのヘルプは次のようになり非常に大変感謝しています。なぜなら、私は数日間私の脳を壊してしまったからです(プログラミングには全く新しいので)
ありがとう!
ありがとうございます!私は本当の初心者で、私はこれに何時間も執着していました。 このコードは私の問題を解決しました: "partialstr = request.vars.partialstr" – Jarrod