小编Eag*_*gle的帖子

在 SailsJS 中设置初始化的更好地方

我是 Sails 的新手,不知道将对象的初始化放在哪里以使其在所有应用程序中都是唯一的。阅读文档后,我认为我可以在全局sails对象中使用它,但不确定是否更好。

我正在使用新的 Appcelerator ArrowDB 来存储我的用户和对象。文档谈论声明适当的变量并使用它,与 APP_KEY。

var ArrowDB = require('arrowdb'),
    arrowDBApp = new ArrowDB('<App Key>');
function login(req, res) {
    var data = {
        login: req.body.username,
        password: req.body.password,
        // the req and res parameters are optional
        req: req,
        res: res
    };
    arrowDBApp.usersLogin(data, function(err, result) {
        if (err) {
            console.error("Login error:" + (err.message || result.reason));
        } else {
            console.log("Login successful!");
            console.log("UserInfo: " + JSON.stringify(result.body.response.users[0]));
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

但是我需要经常使用那个arrowDBAppvar 来创建、更新、删除数据库中的对象,所以我认为最好的方法是在启动脚本中初始化它app.js并在应用程序中共享。

我试过了,但我无法将它存储在sailsvar 中,似乎在执行 Sails.lift() …

javascript node.js sails.js

5
推荐指数
2
解决办法
354
查看次数

GAE:使用静态HTML文件与数据库来提供内容

我的新网站(阅读书籍)实际上使用静态内容来提供页面:我将HTML文件保存在文件夹中,为了服务页面,我阅读它并将内容传递给jinja2模板,以便一起显示.除了获取书籍ID以了解标题之外,没有数据库命中.

这工作正常而且很快,但很明显我必须使用GAE SDK的"部署"选项"上传"每本新书(从我读过的内容来看,无法从外部访问GAE中的文件系统) ,就像使用FTP),这不是最佳方式.

所以我正在考虑将HTML内容保存到数据库中,但是:这会增加数据库命中率吗?我正在使用NDB,所以从理论上讲,读取书籍的每个用户都会在第一次被readed时从NDB缓存中获得缓存结果.这是正确的吗?

将html传递给数据库会更好吗?在大小方面,每个html页面将超过8k.页面也有图像文件,因此,为了避免每个新书上传它的初始问题,我必须再次将图像保存在数据库中,对吗?

书的示例页面将是这样的

python google-app-engine app-engine-ndb

2
推荐指数
1
解决办法
521
查看次数

在NDB中使用memcache

我要从db到ndb,我有点怀疑.

我已经阅读了缓存文档,但我需要澄清或确认:使用db我使用memcache来保存我的"视图"并避免访问数据存储区.NDB"缓存"实体的读写,但是,我也可以做任何读取操作?

例如:items = Item.query().fetch(100)给了我我的物品.这个查询是由NDB自动缓存的吗?如果两个用户想要查看我的列表中的项目,那么第二次读取将会打到NDB缓存?

google-app-engine app-engine-ndb

1
推荐指数
1
解决办法
1141
查看次数

NDB密钥与get_by_id

只是想知道我是否犯了错误:

get()操作使用NDB缓存,所以这个(章节是ndb.Model类):

# Get the entity
chapter_key = ndb.Key('Book', long(bookId), 'Chapter', long(chapterId))
chapter = chapter_key.get()
Run Code Online (Sandbox Code Playgroud)

如果是实体的第二次或更多次读取,则可以使用ndb缓存.

但是,如果我这样做?

Chapter.get_by_id(long(id), parent=ndb.Key('Book', long(bookId)))
Run Code Online (Sandbox Code Playgroud)

这是由ndb管理,还是这个操作是一个标准的数据库操作,不使用缓存?

python google-app-engine app-engine-ndb

1
推荐指数
1
解决办法
2536
查看次数

在 PHP 或 XAMPP 中找不到 Firebird 驱动程序

当我用它开始我的第一个 PHP 项目时,我在尝试连接到 firebird 数据库时浪费了一天的时间,所以我想分享我的解决方案,也许可以在将来帮助其他人(或我自己)。

php firebird pdo

1
推荐指数
1
解决办法
4731
查看次数