我在承诺链中有一个功能,可能会或可能不会做某事.例如
getYear().then(function(results){
if(results.is1999) return party();
else return Q.fcall(function(){/*do nothing here*/});
}).then(sleep)
Run Code Online (Sandbox Code Playgroud)
何处getYear,party以及sleep所有回报承诺.是否有更简洁的方式来编写else语句?也就是说,什么都不做,但仍然会回归可靠的承诺?
好吧,这是我的情况.我有一个通用对象数组,我正在django模板中迭代.那些对象有许多子类,我想在模板中找出我正在处理的子类.这可能吗?可取?
代码可能看起来像(if语句包含一些虚构的语法):
<table>
<tr>
<th>name</th>
<th>home</th>
</tr>
{% for beer in fridge %}
<tr>
<td>
{{ beer.name }}
</td>
<td>
{% if beer is instance of domestic %}US of A{% endif %}
{% if beer is instance of import %}Somewhere else{% endif %}
</td>
</tr>
{% endfor %}
</table>
Run Code Online (Sandbox Code Playgroud) 我确信有一个非常简单的优雅方式来做到这一点,但我无法弄明白.我有一些看起来像这样的输入数据:
[
{id: 1, name: "Peter"},
{id: 2, name: "Paul", manager: 1},
{id: 3, name: "Mary", manager: 1},
{id: 4, name: "John", manager: 2},
{id: 5, name: "Jane", manager: 2}
]
Run Code Online (Sandbox Code Playgroud)
如果可能,我想使用d3.js嵌套操作符来获取在层次结构布局中使用的结构.像这样:
[
{name: "Peter", children: [
{name:"Paul", children: [
{name:"John"},
{name:"Jane"}
]},
{name:"Mary"}
]
}
]
Run Code Online (Sandbox Code Playgroud) 我正在 geodjango 上建立一个网站。在前端,我有一个关于 openlayers 的地图,我希望能够在某些 django url 上触发 ajax 查询并返回 geojson。
问题是标准的 django json 序列化程序不执行 geojson。所以我有一个模型:
class Asset (models.Model):
objects = models.GeoManager()
url_name = models.CharField(max_length=200)
name = models.CharField(max_length=200)
point = models.PointField(srid=4326)
def __unicode__(self):
return self.name
Run Code Online (Sandbox Code Playgroud)
我想创建一个视图:
def geojson_query(request):
#geographic query
...
assets = Asset.objects.all().filter(point__contained=bb_4326)
json = serializers.serialize("json", assets)
return HttpResponse(json)
Run Code Online (Sandbox Code Playgroud)
但后来我得到了一个看起来更像这样的回应:
"url_name": "Upper_Svaneti",
"name": "Upper Svaneti",
"point": "POINT (43.0113899999999987 42.9163899999999998)"
Run Code Online (Sandbox Code Playgroud)
而我想要看起来像这样的东西:
"url_name": "Upper_Svaneti",
"name": "Upper Svaneti",
"geometry": {
"type": "Point",
"coordinates": [43.0113899999999987 42.9163899999999998]
}
Run Code Online (Sandbox Code Playgroud)
所以我想我的问题是,在 Django 中实现 geojson 序列化程序而不完全自己滚动的最佳方法是什么?如果涉及到我自己的滚动,我从哪里开始?