我的网站动态生成一些内容,因此我必须以某种方式在加载后再次启动highlight.js插件.
此代码用于启动荧光笔:
hljs.initHighlightingOnLoad();
Run Code Online (Sandbox Code Playgroud)
我试图做一些类似hljs.initHighlighting();的事情,但它不起作用.
我正在为一个简单的论坛创建一个数据库模型。用户应该能够创建话题、添加帖子并在帖子中发布图片。
在一个视图中,我想显示所有线程并且:
我相信这在不执行线程n查询的情况下是不可能的n,所以真正的问题是如何重新设计数据库以使其成为可能。
class Thread(models.Model):
sticky = models.BooleanField()
...
class Post(models.Model):
thread = models.ForeignKey('Thread')
image = models.OneToOneField('Image', null=True, blank=True, default=None)
date = models.DateTimeField()
...
class Image(models.Model):
image = models.ImageField(...)
...
Run Code Online (Sandbox Code Playgroud)
在这一点上,我知道如何计算帖子和图片,但我不知道如何同时获取第一篇帖子。我考虑在Thread模型中添加额外的字段链接到第一个Post.
我的查询迫使我单独下载第一篇文章:
Thread.objects.annotate(
replies=Count('post'),
images=Count('post__image'),
last_reply=Max('post_date')
)
Run Code Online (Sandbox Code Playgroud) 我的目的是加载GeoJSON数据并将其显示在地图上.GeoJSON中指定的要素的坐标是正常的lon/lat.由于某种原因,openlayers使用地图使用的投影渲染它们而不转换它们.
// Underlying sat layer.
var world = new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
});
// GeoJSON data.
var geojsonObject = {
'type': 'FeatureCollection',
'features': [
{
'type': 'Feature',
'geometry': {
'coordinates': [ 50.07539747, 19.76809501 ],
'type': 'Point'
},
}
]
};
var vectorSource = new ol.source.Vector({
features: (new ol.format.GeoJSON()).readFeatures(geojsonObject)
});
var vectorLayer = new ol.layer.Vector({
source: vectorSource
});
// Map.
map = new ol.Map({
target: 'map',
layers: [world, vectorLayer],
view: new ol.View({
center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
zoom: 2 …Run Code Online (Sandbox Code Playgroud)