小编Dmi*_*try的帖子

使用int调用setProperty但getProperty在google app引擎持久存储上返回Long

在DatastoreService中使用此代码时,我得到ClassCastException Long无法在fromEntity中强制转换为整数.这是正常的行为吗?(在使用google插件进行eclipse的本地计算机上调试时会出现此问题)

class UserData {
    private int _integerval = 0;
    private String _stringval = "";
    public Entity getEntity() {
        Entity ret = new Entity( "User", key );
        ret.setProperty( "property1", _integerval );
        ret.setProperty( "property2", _stringval );
        return ret;
    }

    public static UserData fromEntity( Entity ent ) {
        UserData ret = new UserData();
        ret._integerval = (Integer)ent.getProperty("property1");
        ret._stringval = (String)ent.getProperty("property2");
        return ret;
    }
}
Run Code Online (Sandbox Code Playgroud)

我总是必须像这样捕获这个异常:

try
{
    ret._integerval = (Integer)ent.getProperty("property1");
}
catch( ClassCastException ex ) {
    Long val = (Long)ent.getProperty("property1");
    ret._integerval = val.intValue(); …
Run Code Online (Sandbox Code Playgroud)

java google-app-engine entity

8
推荐指数
2
解决办法
2269
查看次数

如何从 Django 中的请求 QueryDict 中删除密钥?

这是我的 Django 视图之一:

def index(request):

    message = request.GET.get('message', '')

    context = RequestContext(request, {
    'message': message
    })

    return render(request, 'bets/index.html', context)
Run Code Online (Sandbox Code Playgroud)

我的目标是只在模板中显示一次消息,而不是在页面重新加载时显示它。我试过这个:

request.GET['message'] = ''
Run Code Online (Sandbox Code Playgroud)

但得到错误“这个 QueryDict 实例是不可变的”。如何从 QueryDict 中删除键?

python django

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

标签 统计

django ×1

entity ×1

google-app-engine ×1

java ×1

python ×1