小编use*_*628的帖子

Tornado 类未收到 HTML 表单数据

我在 Tornado 框架中使用 WebSockets 并且无法以 html 形式获取要发送到 Tornado 类的数据。

这是我的代码:

class MainHandler(tornado.web.RequestHandler):
    event = []
    def get(self):
        self.render('main.html')             

    def post(self):
        MainHandler.event = self.get_argument('event')
Run Code Online (Sandbox Code Playgroud)

当我尝试将事件发送到 WebSocketHandler 类时。没有从表单收到数据:

class WSHandler(tornado.websocket.WebSocketHandler):

    def open(self):
            print "tailing..."
            db = Connection().blah
            coll = db.blah_tail

            event = MainHandler.event
            print 'Filtered', event
Run Code Online (Sandbox Code Playgroud)

'Filtered' 只打印一个空列表:“Filtered []”。

html表单:

<form action="/" method="post">
            <input type="text" name="event" />
            <input type="submit" id="open" value="Submit Query" />
        </form>
Run Code Online (Sandbox Code Playgroud)

如何将表单数据发送到 WSHandler 类?

谢谢

用于创建 websocket 的 js:

<script>
        $(document).ready(function() {
            var ws;

        $("#open").click(function(evt){
        evt.preventDefault();

        ws = new …
Run Code Online (Sandbox Code Playgroud)

html python tornado websocket

5
推荐指数
1
解决办法
3077
查看次数

D3的实时数据

我想知道我是否可以将D3库与我的服务器通过websockets发送的实时数据一起使用.我看不到任何证明这一点的文档或示例.我最初的期望是通过以下代码示例来实现:

ws = new WebSocket(ws://localhost:8888/ma");   
some more code....

  ws.onmessage = function(evt) {
        d3.json("evt.data", function(json) {
......    
.......More code.....
......
 }
}
Run Code Online (Sandbox Code Playgroud)

但这似乎不起作用,但我知道客户端通过检查控制台日志来接收数据.

此外,还有一个递归函数可以展平JSON文档:

// Returns a flattened hierarchy containing all leaf nodes under the root.
function classes(root) {
var classes = [];

function recurse(name, node) {
  if (node.children) node.children.forEach(function(child) { recurse(node.name, child);    });
  else classes.push({packageName: name, className: node.name, value: node.size});
  }

  recurse(null, root);
  return {children: classes};   
}

     console.log(evt.data);
  };

  ws.onclose = function (evt) {
       alert("Connection terminated")};

  });
 });
Run Code Online (Sandbox Code Playgroud)

如果我的JSON文档已经是平的那么我认为它不是必需的,即:

{ID: …
Run Code Online (Sandbox Code Playgroud)

html javascript html5 websocket d3.js

5
推荐指数
1
解决办法
4430
查看次数

MongoDB使用$ pull删除数组子文档中的字典

我正在尝试删除此数组中的以下dict:

{
"ProjectID": "8ToGTAUjT+CbcH68ZYuW8Q=="
"Tasks": [
    {
        "description": "",
        "title": "testcounter",
        "notes": "",
        "percentComplete": "100",
        "completedDate": {
            "hour": "12",
            "year": "2014",
            "day": "14",
            "minute": "43",
            "month": "11"
        },
        "completed": "",
        "ProjectID": "8ToGTAUjT+CbcH68ZYuW8Q==",
        "TaskID": "JxHddpQNSguzOqg1sdsdKtyQ=="
    },
    ......
 ],
 ......
 }
Run Code Online (Sandbox Code Playgroud)

Tasks 是此记录中的子文档.

我试着用这个删除:

 db.projects.update({'ProjectID': "8ToGTAUjT+CbcH68ZYuW8Q=="}, 
                      {'$pull': {'Tasks.TaskID': "JxHddpQNSguzOqg1sdsdKtyQ=="}})
Run Code Online (Sandbox Code Playgroud)

但是,这不会删除此子文档.如何删除数组中的dict?

mongodb pymongo

5
推荐指数
1
解决办法
2583
查看次数

MongoDB上限集合允许的最大大小

我正在使用一个可以使用的mongodb上限集合.我想将其大小设置为最大值,因为我不希望根据FIFO规则删除最旧的记录.

我希望尽可能长时间地保持数据,同时保持封顶集合的功能.

谢谢

mongodb pymongo

3
推荐指数
1
解决办法
3405
查看次数

使用Web套接字在浏览器中创建图形

我正在尝试查找可以在Web浏览器中创建条形图的示例或工具.我将通过Web套接字从服务器发送数据,并且在收到数据时,我希望每个条的"高度"发生变化,反映收到的数据.

因此,用户可以在收到数据时看到图表发生变化.

我已经看过很多例子,但我看不到会有上述例子.像D3这样的东西看起来非常好,但似乎有一个陡峭的学习曲线,似乎有很多在那里它变得非常混乱.

我正在寻找简单快捷的事情.

谢谢

html javascript graph websocket

3
推荐指数
1
解决办法
7837
查看次数

在每个第n个字符后插入字符

我正在尝试将数字转换为1215464565到12-15-46-45-65.我正在尝试这样做:

var num = 1215464565; 
num = num.toString();
num.replace(/(.{2)/g,"-1");
Run Code Online (Sandbox Code Playgroud)

然而,JSFiddle并没有反映出这种变化.

javascript regex

3
推荐指数
1
解决办法
6464
查看次数

JQuery 迭代字典数组

dicts我有一个由服务器在 ajax 请求中返回的数组,如下所示:

var obj =  [{'id': '111', 'name': 'test1'}, {'id': '1975', 'name': 'test2'}]
Run Code Online (Sandbox Code Playgroud)

当我尝试访问每个字典时:

$.each(obj,function(index,value){ 
    alert(index + " : " + value);
});
Run Code Online (Sandbox Code Playgroud)

我收到错误:

未捕获的类型错误:无法使用 'in' 运算符在 [{'id': '111', 'name': 'test1'}, {'id': '1975', 'name': 'test2 中搜索 '193' '}]

如何访问数组中的每个字典?

javascript jquery

3
推荐指数
1
解决办法
1万
查看次数

从子组件中反映父级的更新状态

我有子组件从父母接收道具,但在一个孩子的事件(按钮点击)我想setState再次使用新的道具.因此,父级将列表中的所有项目传递给子级.在子prop中,按钮删除列表中的项.但是如何更新状态以便列表项也从视图中删除.这是我的代码:

const Parent = React.createClass({
    getInitialState:function(){
        return {
            items: []
        };
    },
    componentWillMount:function(){
        axios.get('/comments')
            .then(function(response) {
                this.setState({
                    items: response.data
                })
            }.bind(this));
    },
    render() {
        return (
            <div>
                <Child1 data={this.state.items}/>
            </div>
        );
    }
});

export default Parent;

export default function Child1(props){
    return(
        <div>
            { props.data.map((comment,id) =>(
                    <p key={id}>
                        {comment.name}<Delete data={comment.id}/>
                    </p>
                )
            )}
        </div>
    )
}

class Delete extends React.Component {
    constructor() {
        super();
        this.handleClick = this.handleClick.bind(this);
    }

    handleClick() {
        Purchase.Action(this.props.data,'remove');
        axios.post('/comments', {
            item: this.props.data
        })
        .then(function (response) { …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs

3
推荐指数
1
解决办法
5699
查看次数

迭代列表时递增变量计数器

我有一个条件,我正在检查列表中的每个元素,如果条件变为真,我想在几个变量之一中增加一个计数器的值.这是我的例子:

for el in elements:
    if sum(x, el) < 5:
        .........DO SOMETHING: Increment variable age
Run Code Online (Sandbox Code Playgroud)

现在,如果我想增加与元素中的el相关的变量,我该怎么做呢.因此,例如,如果el是年龄,然后我想增加一个年龄变量,这将如何做?

我可以通过编写大量的switch语句来做到这一点,但是最好的方法是做什么.

谢谢

编辑

我要做的是每个元素是一组城市的坐标(Long,Lat),每个元素我都在计算距事件的距离.我将使用geopy.

现在因为每个元素都是坐标而不是城市名称.我想说的是,如果事件距纽约坐标不到5公里,可以增加纽约变量,或者距离伦敦5公里,以增加伦敦变量.

希望这会让它更清晰.

python python-2.7

2
推荐指数
1
解决办法
2504
查看次数

MongoDB在集合列表中搜索每个字典

我有一个collection包含的listdicts我想搜索是否有dict包含两个特定的key:values

因此,例如,我想find_one在字典中包含特定的姓氏和名字。这是我的收藏:

{
"names": [
    {
        "firstName": "bob",
        "lastName": "jones",
        "age": "34",
        "gender": "m"
    },
    {
        "firstName": "alice",
        "lastName": "smith",
        "age": "56",
        "gender": "f"
    },
    {
        "firstName": "bob",
        "lastName": "smith",
        "age": "19",
        "gender": "m"
    },          
  ]
}
Run Code Online (Sandbox Code Playgroud)

我想查看是否有以鲍勃·史密斯为名字和姓氏的记录,我将其搜索为:

first = 'bob'
last = 'smith'

nameExists = db.user.find_one({'$and':[{'names.firstName':first,'names.lastName':last}]})
Run Code Online (Sandbox Code Playgroud)

此查询会检索鲍勃·史密斯的一条记录吗?

python mongodb pymongo mongodb-query

2
推荐指数
1
解决办法
3638
查看次数