我正在使用NodeJS来运行套接字服务器(使用socket.io).当客户端连接时,我希望打开并运行一个可以完成大量工作的模块.尽管我小心翼翼地尝试尽可能多地捕获,但是当这个模块抛出错误时,它显然会使用它来取消整个套接字服务器.
有没有办法可以将两者分开,所以如果连接的客户端模块脚本失败,它不一定会占用整个服务器?
我假设这是子进程的用途,但文档没有提到启动其他节点实例.
如果客户端断开连接,我显然需要终止进程.
我有一个Python脚本,它打开一个websocket到Twitter API,然后等待.当事件通过amq传递给脚本时,我需要打开一个新的websocket连接,并在注册新连接后立即关闭旧连接.
它看起来像这样:
stream = TwitterStream()
stream.start()
for message in broker.listen():
if message:
new_stream = TwitterStream()
# need to close the old connection as soon as the
# new one connects here somehow
stream = new_stream()
Run Code Online (Sandbox Code Playgroud)
我试图弄清楚如何建立一个'回调',以便通知我的脚本何时建立新的连接.TwitterStream类有一个我可以引用的"is_running"布尔变量,所以我想的可能是:
while not new_stream.is_running:
time.sleep(1)
Run Code Online (Sandbox Code Playgroud)
但它似乎有点混乱.有谁知道更好的方法来实现这一目标?
我正在使用Javascript SDK将内容发布到用户朋友的墙上:
var publish =
{
method: 'stream.publish',
message: 'Some kind of test',
uid: uid,
target_id: friendID,
attachment: {
name: 'Test',
caption: 'Facebook API Test',
description: ('Sure hope it worked!'),
href: 'http://www.test.com/',
media: [
{
type: 'image',
href: 'http://test.com/',
src: 'http://test.com/image.jpg'
}
]
},
action_links: [
{ text: 'Enigma Marketing', href: 'http://www.test.com/' }
],
user_prompt_message: 'Share your thoughts about test'
};
FB.ui(publish);
return false;
Run Code Online (Sandbox Code Playgroud)
它工作正常,但我想知道是否有办法可以发布到MULTIPLE朋友的墙上?我注意到pop在列表中显示的目标朋友很少,所以似乎可以将帖子发布给多个用户.我在文档中找不到任何内容,非常感谢任何帮助.
我有一个不断轮询数据的python脚本.该脚本不断运行,永远不会停止.
该脚本轮询来自首次运行脚本时传递给它的关键字轨道的数据.
如果不从另一个python脚本停止脚本,更新此轨道的最佳方法是什么?
我能想到的唯一解决方案是将轨道存储在txt文件中,并在set定时器上检查文件的任何更新.看起来有点凌乱.
我正在尝试创建一个在我的主脚本后台运行在计时器上的方法:
def hello_world(self):
print 'Hello!'
threading.Timer(2,hello_world).start()
if __name__ == "__main__":
try:
hello_world()
except KeyboardInterrupt:
print '\nGoodbye!'
Run Code Online (Sandbox Code Playgroud)
当我尝试键盘中断我的脚本时收到此消息:
Exception KeyboardInterrupt in <module 'threading' from '/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/threading.py'> ignored
Run Code Online (Sandbox Code Playgroud)
如何关闭线程以便我可以干净地退出应用程序?
我正在使用require.js将一些模板文件加载到我的应用程序中,如下所示:
define(function(require) {
var App = require('app'),
TeamListTmpl = require('text!templates/team-list.html'),
PlayerListTmpl = require('text!templates/player-list.html'),
PlayerItemTmpl = require('text!templates/player-item.html');
Run Code Online (Sandbox Code Playgroud)
然后,使用Backbone,我正在引用模板,如下所示:
var PlayerItemView = Backbone.View.extend({
tagName: "li",
template: _.template(PlayerItemTmpl),
Run Code Online (Sandbox Code Playgroud)
拥有单独的模板文件有点烦人,我想将所有模板组合成一个html文件并提取单个元素.我试过这个:
define(function(require) {
var App = require('app'),
Templates = require('text!templates/templates-combined.html');
Run Code Online (Sandbox Code Playgroud)
模板组合的html文件如下所示:
<div id="some-element-1">1</div>
<div id="some-element-2">2</div>
<div id="some-element-3">3</div>
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,这不起作用:
$(Templates).find("#some-element-1").html();
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
$('#some-element-1', Templates).html();
Run Code Online (Sandbox Code Playgroud)
有没有办法从一个组合文件中提取单个模板文件而不先将它添加到DOM?也许使用javascript模板代替?任何帮助将不胜感激.
我正在尝试构建一个模型,该模型将尝试识别所提供文本的兴趣类别/主题.例如:
"早些时候喜欢玩足球比赛."
将解析为顶级类别,如:
"运动".
我不确定我在这里尝试实现的正确术语是什么,因此谷歌没有找到任何可能提供帮助的库.考虑到这一点,我的方法将是这样的:
我的方法可能涉及为每个兴趣类别设置单独的语料库,我确信准确性会相当悲惨 - 我知道它永远不会那么准确.
一般都在寻找一些关于我想要实现的可行性的建议,但问题的关键在于:a)我的方法是正确的吗?b)是否有任何图书馆/资源可能有所帮助?
我创建了一个自定义窗口小部件,该窗口小部件具有一些ajax功能的链接。为了使其正常工作,我需要传递当前正在编辑的实例的pk。似乎小部件无法访问当前模型实例(有充分的理由!),所以我想知道如何获取此信息?我是否需要从uri中获取它,或者我是否忽略了一种方便的方法,这将为我提供所需的东西。
谢谢
如果我有一个带有名字的对象Object 1并且我想要get()那个对象,但是我试图用一个诽谤的名字来获取它object-1,有什么办法可以做到这一点吗?就像是:
Model.objects.get(name__slugify = slugifiedname)
Run Code Online (Sandbox Code Playgroud)
如果可能的话,我想避免在模型中添加额外的slug字段.
我想创建一个能够显示各种不同模型的ModelForm的视图.它通过获取模型的内容类型然后动态实例化与该特定模型相关联的模型表单来实现.这是我的模型:
from django.db import models
class SomeModel(models.Model):
name = models.CharField(max_length=150)
def __unicode__(self):
return self.name
Run Code Online (Sandbox Code Playgroud)
在同一个应用程序中,有一个forms.py,其格式如下:
from django.forms import ModelForm
from someapp.models import SomeModel
class SomeModelForm(ModelForm):
class Meta:
model = SomeModel
fields = ('name',)
Run Code Online (Sandbox Code Playgroud)
所以我想在我的视图文件中做的是动态地为每个模型返回正确的表单.我尝试了以下方法:
from django.db import models
from someapp.forms import SomeModelForm
class SomeModel(models.Model):
name = models.CharField(max_length=150)
form = SomeModelForm
def __unicode__(self):
return self.name
Run Code Online (Sandbox Code Playgroud)
但由于明显的循环导入,它不起作用.有谁知道如何实现这个目标?我尝试使用modelform_factory,但似乎忽略了forms.py中的任何自定义模型形式.
编辑:我应该提到我不会有模型的实例,只有模型类本身,所以有一个模型内部的方法不起作用(但是,如果你调用它,它确实有效)模型的一个实例)