我刚接触过Python和SQlalchemy的web,我正在尝试为看板板填充一个下拉菜单,其中包含表"user“中的用户名。我能够从数据库中获取数据,但由于某种原因,它们没有显示在我的仪表板模板的下拉菜单中。实际上,下拉菜单是填充的,但是没有显示名称:
app.py
from flask import g
import sqlite3
def get_db():
DATABASE = 'C:/path/to/db'
db = getattr(g, '_database', None)
if db is None:
我在sqlite数据库中有一个表,我想在网页上显示它。列标题与数据库中的相同。我还需要一个下拉列表,列出每列中的所有唯一值,以便我可以选择过滤要显示的行。
例如,sqlite db:
1 2 3
a l z
b k w
b m x
a m w
d m y
c l w
在网页上显示如下:
1 2 3
v v v
a l z
b k w
b m x
a m w
d m y
c l w
其中每个'v‘表示下拉,因此:COL1v= all,a,b,d,c;col2v= all,l,k,m;col3v= all,z,w,x,y,即取一列中的所有条目,使其唯一,并使用该条目填充下拉。顺序并不重要。
当我试图从预先填充的SQLite数据库:sqlite3_prepare_v2 failure: no such table 'plant'读取时,我收到了一个错误。
据我所知,SQLite默认情况下会在/www文件夹中查找/www文件,然后在找不到预先填充的mydb.db文件时创建一个空数据库。这就是为什么它找不到“工厂”表的原因,因为新创建的空白数据库显然不包含“工厂”表。但是,我可以确认数据库在/www文件夹中,并且当我在终端中运行sqlite3 mydb.db和.tables时,它包含了“工厂”表。
我不明白它为什么不读取预填充的mydb.db文件。
文件夹结构(来自根)
我正在尝试使用来实现SQLite。
我制作了一个sqlite数据库,它是预先填充的.
在我的本机项目中,如文档所述,我将players.db文件放到/www文件夹中。
但是当我从控制台检查时,打开数据库失败了。我无法打开我预先填充的sqlite数据库.
我尝试了这些选择,但它们都不适合我;
var db = SQLite.openDatabase({name : "players.db", createFromLocation : "~players.db"});
var db = SQLite.openDatabase({name : "player
我有一个填充SQLite数据库的控制台应用程序。当应用程序自己运行时,我没有得到任何错误。如果我运行应用程序的多个实例,其中每个应用程序都在自己的文件夹中,并且每个应用程序都填充自己的数据库,我偶尔会得到以下异常:
System.Data.SQLite.SQLiteException (0x80004005): Attempt to write a read-only database
attempt to write a readonly database
at System.Data.SQLite.SQLite3.Reset(SQLiteStatement stmt)
at S
The problem:在用户第一次启动应用程序时填充一个sqlite数据库。
Probable解决方案:我希望在开发时使用所需的数据创建一个临时文件,在用户首次启动app时读取该文件,并将其存储在sqlite数据库中。我对实现这个解决方案的疑问是:我是如何在开发时创建一个临时文件的,该文件将随iPhone应用程序一起提供,并在sqlite数据库被填充后删除?是否有一种方法可以指示开发时文件必须放置在“文档目录”或“临时目录”中?我不希望这个文件存在后,我把所有的数据,在sqlite数据库。
如果您对我的可能解决方案有不同的方法,可以告诉我。
提前谢谢。