我有一个需要jsonify的对象列表.我看过烧瓶jsonify文档,但我只是没有得到它.
我班有几个研究所,增值经销商,每一个都是一个字符串:gene_id,gene_symbol,p_value.我需要做什么才能将其序列化为JSON?
我天真的代码:
jsonify(eqtls = my_list_of_eqtls)
Run Code Online (Sandbox Code Playgroud)
结果是:
TypeError: <__main__.EqtlByGene object at 0x1073ff790> is not JSON serializable
Run Code Online (Sandbox Code Playgroud)
据推测,我必须告诉jsonify如何序列化EqtlByGene,但我找不到一个示例来说明如何序列化一个类的实例.
这段代码现在有效(非常感谢Martijn Pieters!):
class EqtlByGene(Resource):
def __init__(self, gene_id, gene_symbol, p_value):
self.gene_id = gene_id
self.gene_symbol = gene_symbol
self.p_value = p_value
class EqtlJSONEncoder(JSONEncoder):
def default(self, obj):
if isinstance(obj, EqtlByGene):
return {
'gene_id' : obj.gene_id,
'gene_symbol' : obj.gene_symbol,
'p_value' : obj.p_value
}
return super(EqtlJSONEncoder, self).default(obj)
class EqtlByGeneList(Resource):
def get(self):
eqtl1 = EqtlByGene(1, 'EGFR', 0.1)
eqtl2 = EqtlByGene(2, 'PTEN', 0.2) …Run Code Online (Sandbox Code Playgroud) 我无法获得适用于jQuery验证插件的自定义错误消息.我正在使用jQuery 1.7.2和jquery验证插件1.9.0.
我的表格很简单:
<form id="registrationform">
<label for="rid">User Id</label><br/>
<input id="rid" type="text" class="required"/><br/>
<label for="remail">Email</label><br/>
<input id="remail" type="text" class="required email"/>
</form>
Run Code Online (Sandbox Code Playgroud)
我的javascript很简单:
$(document).ready(function() {
$("#registrationform").validate({
rules: {
rid : {
required : true
},
remail: {
required : true,
email : true
}
},
messages: {
rid : {
required : "id can not be empty"
},
remail: {
required: "email can not be empty",
email : "enter a valid email"
}
}
});
});
Run Code Online (Sandbox Code Playgroud)