我试图让用户从以检查表形式提供的爱好列表中选择爱好。当他们被选中时,所选择的爱好进入用户表。我想我的复选框显示用户的爱好,好像爱好是选中的,它是选中的,如果没有它没有选中。用户可以通过选中或取消选中复选框来更新他们的爱好。
我很难以选中或未选中的形式显示用户兴趣爱好的当前状态,并从中更新用户hobbie表。在class InfoPage(BasePage):
title = 'One Macnica'
def get(self):
self.write_page_header()
hobbies_list = Hobby.all().fetch(100)
template_values = {"hobbies_list": hobbies_list}
path = os.path.join(os.path.dirname(__file__), 'templates')
path = os.path.join(path, 'hobby.html')
self.response.out.write(template.render(path, template_values))
self.write_page_footer()
def post(self):
self.write_page_header()
hobbies_list = Hobby.all().fetch(100)
if self.request.get("hobby"):
hobby_name = self.request.get('hobby')
new_hobby = Hobby(name=hobby_name.strip(), key_name = hobby_name.strip())
#fetch attendee and add new hobby
attendee_query = Attendee.gql('WHERE email = :1',
users.get_current_user().email())
attendee = attendee_query.fetch(1)
attendee = attendee.pop()
hobbies = attendee.hobbies
hobbies.append(new_hobby.key())
attendee.hobbies = hobbies
#eliminate the dupliate
hobbies = list(set(hobbies))
attendee.hobbies = hobbies
attendee.put()
template_values = {"hobbies_list": hobbies_list}
path = os.path.join(os.path.dirname(__file__), 'templates')
path = os.path.join(path, 'hobby.html')
self.response.out.write(template.render(path, template_values))
self.write_page_footer()
在爱好.html以下是
^{pr2}$
我目前正在考虑制作一个爱好清单清单,将所有的爱好列表与与会者的爱好列表进行比较,如果有,则返回已检查,如果没有返回空值。
我在实际编码时遇到困难,不知道这是否是最好的方法。在
任何帮助都将不胜感激。在