我使用Sphinx生成一些文档.我有一个reStructuredText文档,我想把图像放入其中.情况是图像应该是可点击的,以便在用户点击图像后,应该以完整尺寸显示该图像.我使用image指令及其目标选项,如下所示:
.. image:: /images/some_image.png
:alt: Image descripion
:align: center
:target: `big_some_image`_
.. _big_some_image: /images/some_image.png
Run Code Online (Sandbox Code Playgroud)
问题是在渲染页面中我得到:
<a href="/images/some_image.png"><img src="../../../_images/some_image.png"></a>
Run Code Online (Sandbox Code Playgroud)
因此src
,image指令中有正确的但href
超链接的属性不正确.
问题:
有没有办法以image指令的方式生成链接?我的意思是相对于文件.
有没有其他(内置)方式有"缩略图 - >点击 - >大图像"行为?
这个问题涉及angular-app项目及其对用户进行身份验证的方式.
原始实现通过在路由器上使用resolve子句来保护对某些URL的访问.这看起来像:
$routeProvider.when('/projects', {
templateUrl:'projects/projects-list.tpl.html',
controller:'ProjectsViewCtrl',
resolve:{
projects:['Projects', function (Projects) {
//TODO: fetch only for the current user
return Projects.all();
}],
authenticatedUser: securityAuthorizationProvider.requireAuthenticatedUser
}
Run Code Online (Sandbox Code Playgroud)
});
在用户通过身份验证并获取项目(以防止ui闪烁)之前,不会呈现视图.如果未对用户进行身份验证,则弹出登录弹出窗口,在用户提交后,将解析承诺并显示请求的页面.如果Projects.all()调用不需要auth,这很好用.
这是服务器调用的日志:
127.0.0.1 - - [Mon, 28 Oct 2013 11:15:47 GMT] "GET /projects HTTP/1.1" 200 739 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:24.0) Gecko/20100101 Firefox/24.0"
Unauthenticated
127.0.0.1 - - [Mon, 28 Oct 2013 11:15:47 GMT] "GET /current-user HTTP/1.1" 200 24 "http://localhost:3000/projects" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:24.0) Gecko/20100101 Firefox/24.0"
Unauthenticated
Unauthenticated
127.0.0.1 - …
Run Code Online (Sandbox Code Playgroud) 我有一个项目,物理传感器将数据发送到服务器.数据不定期发送 - 在激活传感器后,但不会少于每20分钟发送一次.在服务器上数据存储在Posgresql数据库中.
数据结构如下:
Sensor Table
sensor name - string
sensor serial no - string
sensor type - foreign key to types table
Sensor Data Table
sensor - foreign key
timestamp
value 1 - boolean
value 2 - boolean
value 3 - integer
value 4 - float
...
Run Code Online (Sandbox Code Playgroud)
预计不会超过每100个请求/秒.数据库中的数据记录应该持续90天,在某些情况下甚至更多(不仅仅是我之前认为的2周).因此,记录总量不会超过120 960 000/14天.这是"安全"的估计.实际上它可能少10倍(10 req /秒,12 960 000条记录).
我需要对数据做一些分析,比如:
上面的"声明时间"大于或等于1秒.
整个服务器部分是在Django(和django-rest-framework来收集数据)中开发的.
问题是如何有效地进行这种数据分析,假设应该有实时或接近实时(1秒)的数据监控和时间段来触发所需的操作.
我的想法:
运行一个进程,该进程每秒查询数据库以查找满足条件和调用特定操作的记录(可能需要1秒以上)
为每种分析类型运行一个单独的进程(eventlet?),然后每1秒查询一次数据库并触发特定的操作.
每个传感器运行一个进程,持续向其订户报告:我在"值2"上的时间超过x秒等.在该传感器的新数据到达后,进程将被重置.像zeromq这样的一些发布 - 订阅解决方案可能会在这里使用吗?
使用其他/更快的解决方案
提示? …