首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >列出Kivy应用程序中的图书库(Django )中的所有书籍

列出Kivy应用程序中的图书库(Django )中的所有书籍
EN

Stack Overflow用户
提问于 2013-09-22 16:28:28
回答 1查看 454关注 0票数 0

我是学基维的。我有Django应用程序的CRUD函数(图书库)和API (Tastypie)。

如何用我所有书的列表来构建应用程序呢?要列出哪些组件,以及如何从API中检索数据并显示它们?

Mysite.com/api/book/?format=json

杰森:

代码语言:javascript
复制
{"meta": {"limit": 20, "next": null, "offset": 0, "previous": null, "total_count": 8}, "objects": [{"title": "Kivy book", "description": "Cool book", "id": 1, "page_count": 155}]}

有人能为这个简单的例子提供代码吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-23 01:26:40

这里是一个例子,从我的理解,你正在努力实现。它基于最简单的ListView实例。请注意,我从您提供的示例中创建了一个扩展的JSON版本。另外,当您想要使用url时,您必须替换两个注释行。加载json的方法是load (用于io输入),而不是loads (用于字符串输入)。

代码语言:javascript
复制
from kivy.uix.listview import ListView
from kivy.uix.gridlayout import GridLayout
import json
import urllib2

class MainView(GridLayout):

    def __init__(self, **kwargs):
        kwargs['cols'] = 2
        super(MainView, self).__init__(**kwargs)


        the_string_json = '{"meta": {"previous": null, "total_count": 8, "offset": 0, "limit": 20, "next": null}, "objects": [{"id": 1, "page_count": 155, "description": "Cool book", "title": "Kivy book 1"}, {"id": 1, "page_count": 155, "description": "Cool book", "title": "Kivy book 2"}, {"id": 1, "page_count": 155, "description": "Cool book", "title": "Kivy book 3"}]}'
        the_dict = json.loads(the_string_json)

        # Substitute the previous two lines for this ones:
        # the_io_json = urllib2.urlopen('mysite.com/api/books/?format=json')
        # the_dict = json.load(the_io_json)

        list_view = ListView(
            item_strings=[book['title'] for book in the_dict['objects']])

        self.add_widget(list_view)


if __name__ == '__main__':
    from kivy.base import runTouchApp
    runTouchApp(MainView(width=800))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18946062

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档