2011-03-06 48 views
0

我是新的Web应用程序开发人员,所以如果此问题太基本,请提前抱歉。如何在Web应用程序中加载国家数据库

以下是这个问题的详细信息:正在使用

A]网站 - 谷歌应用程序引擎与Python,django的。

B]教程链接使用 - http://code.google.com/appengine/articles/djangoforms.html

C]问:在我建立的应用程序,有一个下拉框,它允许用户选择自己的国家。由于国家列表超过200,我想在应用程序加载之前构建国家的数据库。

一旦部署了这个应用程序,我不希望数据库再次被重新加载,因为条目对所有用户都是不变的。如何实现这一目标?

谢谢, 兰斯。

回答

2

将国家作为一个恒定的名单:

COUNTRIES=['United States', 'England'...] 

在你的模型:

country=db.StringProperty(verbose_name='Country',required=False, choices=set(COUNTRIES)) 

现在,当你加载您的模型表单,选择将从您的国家/地区列表中自动填充。

+0

谢谢,我可以看到这将工作。但是这会在用户每次调用应用程序时加载这些国家。有没有一种方法可以加载数据库,并在应用程序启动时为应用程序使用做好准备。 – bhavesh 2011-03-06 18:37:40

+0

如果将变量存储在python列表中,它们将不会存储在数据库中,因此可以在启动时为应用程序使用。该列表将加载一次,并始终可用于您的应用程序。你是否试图将这些值硬编码到你的html中? – garnertb 2011-03-06 20:38:08

+0

@lance_klusener每次实例启动时从源代码加载国家的速度将比每次渲染页面时从数据存储区加载它们快得多。 – 2011-03-07 23:22:53

-1

只需使用

<select> 
    <option></option> 
</select> 

感谢 让

+0

琼,在工作版本我有:<形式行动= “/ UserReporting” 名称= “addCountry” ID = “addCountry” 方法= “POST”> \t \t

选择国家:

\t <选择名称= “国家” ID = “国家”> \t \t <选项值= “0”>国家... \t \t \t <选项值= 1>阿富汗 \t \t \t <选项值= 2> Å土地 个群岛 \t \t \t <期权价值= 3>阿尔巴尼亚 \t \t \t <期权价值= 4>阿尔及利亚 \t \t \t <期权价值= 5>美国 属萨摩亚 – bhavesh 2011-03-06 18:38:45

+0

对不起以前的编辑去快,我在我的HTML文件中有