小编Mat*_*ell的帖子

使用Javascript支持筛选屏幕的好工具是什么?

是否有一个好的测试套件或工具集可以自动化网站导航 - 使用Javascript支持 - 并从页面收集HTML?

当然,我可以使用BeautifulSoup直接删除HTML.但这对我需要Javascript的网站没有好处.:)

javascript screen-scraping

29
推荐指数
2
解决办法
2万
查看次数

Django:与ManyToManyField一起使用select_related

我有 :

class Award(models.Model) :
    name = models.CharField(max_length=100, db_index=True)

class Alias(models.Model) :
    awards = models.ManyToManyField('Award', through='Achiever')

class Achiever(models.Model):
    award = models.ForeignKey(Award)
    alias = models.ForeignKey(Alias)
    count = models.IntegerField(default=1)
Run Code Online (Sandbox Code Playgroud)

我怎样才能Alias拥有全部achiever_setawards预先填充的?

>>> db.reset_queries()
>>> Alias.objects.filter(id="450867").select_related("achiever_set__award").get().achiever_set.all()[0].award.name
u'Perma-Peddle'
>>> len(db.connection.queries)
3
>>> db.reset_queries()
>>> Alias.objects.filter(id="450867").select_related("awards").get().awards.all()[0].name
u'Dwarfageddon (10 player)'
>>> len(db.connection.queries)
2
Run Code Online (Sandbox Code Playgroud)

我将需要很多访问别名已经获得的奖项(中间表和奖项本身).我如何批量所有这些?

python django django-models django-select-related

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

如何制作文本框和textarea相同宽度的跨浏览器?

将文本框(即输入类型="文本")和textarea的宽度设置为500px在IE6和Chrome中不起作用,只能在FF2中正常工作(尚未测试其他浏览器),IE和Chrome添加两个像素到文本框.

所有元素的填充和边距都设置为0

*
{
margin: 0px;
padding: 0px;
}
Run Code Online (Sandbox Code Playgroud)

将doctype从xhtml 1.0 transitional更改为strict也不起作用.

html css

12
推荐指数
2
解决办法
2万
查看次数

任何人都可以指出TG2优于Django的利弊吗?

Django是我最喜欢的python web框架.我尝试过其他像pylons,web2py,nevow等.

但我从来没有热情地看过TurboGears.

现在TG2没有测试版,我可以尝试一下.我想知道与Django相比有哪些优点和缺点.

python django turbogears turbogears2

7
推荐指数
3
解决办法
2276
查看次数

将 Paho MQTT 与 Django 集成

我正在做一个使用 Django 和 MQTT 的项目。有一种情况,当我的 Django Web 服务器由于某种原因断开连接后重新连接到代理时,我想重新订阅与数据库中模型相关的所有主题。我有模型房间如下:

class Room(models.Model):
    building    = models.ForeignKey(Building, on_delete= models.CASCADE)
    number      = models.PositiveIntegerField()
    available   = models.BooleanField(default=True)
    power       = models.BooleanField(default=False)

class Meta:
    ordering = ['building', 'number']
    unique_together = ['building', 'number']

def __str__(self):
    return f"{self.building.bid}/{self.number}"

def get_mqtt_topic(self):
    return f"{self.building.bid}/{self.number}"
Run Code Online (Sandbox Code Playgroud)

get_mqtt_topic() 方法将返回与房间关联的 MQTT 主题。MQTT 客户端代码 mqtt/client.py:

import paho.mqtt.client as mqtt
from .tasks import *
from .models import Room
def on_connect(client, userdata, flags, rc):
   print("Connecting to CloudMQTT broker: "+ mqtt.connack_string(rc))
   room_mqtt = [(room.get_mqtt_topic(), 1) for room in Room.objects.all()]
   client.subscribe(room_mqtt) …
Run Code Online (Sandbox Code Playgroud)

python django mqtt paho

6
推荐指数
1
解决办法
2384
查看次数

如何阅读pim.vol文件

是否有基于桌面的方法来读取在Windows Mobile设备上存储联系人,任务和日历信息的pim.vol文件?理想情况下,我想找一个允许我从我的数据中提取数据的导出工具,但我也会选择一个允许我与文件接口并从中提取数据的库.

我已经用Google搜索了一下,并没有得到任何好的答案.我很感激任何指针.

windows-mobile

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

使用jQuery,从跨域url访问json,其中json可能形成不佳

我正在使用jQuery的ajax函数来访问跨域url.该网址将返回json.我正处于发现阶段,但我想,因为json值包含几个'"'字符串,json eval会抛出错误并停止执行我的客户端脚本.我得到的错误是"未终止的字符串文字".我知道如果我将返回的json硬编码放在本地div中并删除'"' 字符串(和几个隐藏的特殊字符),我可以成功地获得json到eval.无论是通过解决方法还是通过修改我的代码,我可以做些什么来从URL获取json并将其存储在我的客户端javascript中作为有效的json对象?

我目前的代码.没有定义的函数(success,complete,error,dataFilter)执行:

$(function() {
  $.ajax({
  url: "http://www.codemash.org/rest/sessions.json?format=jsonp&callback=?", 
  dataType: "jsonp",
  success: successFunc,
  complete: completeFunc,
  error: errorFunc,
  dataFilter: dataFilterFunc
});

});

function successFunc() { console.log('successFunc(). enter.'); }
function completeFunc() { console.log('complete(). enter.'); }
function errorFunc() { console.log('errorFunc(). enter.'); }
function dataFilterFunc(data, type) { 
  data.replace(/\W/g, ' ');
  return data; 
}
Run Code Online (Sandbox Code Playgroud)

javascript jquery json jsonp

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

在另一个Web服务器上运行Apache?

有没有人在同一台机器上运行两个不同的Web服务器(如Apache和CherryPy)并没有成功?我现在正在尝试其他网络服务器,我想看看我是否可以在保持其他网站正常运行的同时进行实验.你可以说这不是一个特定的软件问题,因为它是一个普通的网络问题.

  • 我知道可以在不同的端口上运行两个Web服务器; 但有没有办法配置它们,以便它们可以在同一个端口上运行(即,它们都在端口80上运行)?
  • Web服务器不会提供来自相同域的文件.例如,Apache可以从foo.domain.com提供文档,而另一个Web服务器可以从bar.domain.com提供.

我知道这不是一个理想的配置.我想看看是否可以在我冲下兔子洞之前完成它.:)

linux apache

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

Django:自定义管理站点类的管理注册装饰器

所以我想使用 AdminSite 类自定义管理页面,如文档中所述。

from django.contrib.admin import AdminSite
from .models import MyModel

class MyAdminSite(AdminSite):
    site_header = 'Monty Python administration'

admin_site = MyAdminSite(name='myadmin')
Run Code Online (Sandbox Code Playgroud)

但是admin_site.register(MyModel)我想使用寄存器装饰器,而不是使用

from django.contrib.admin import ModelAdmin

@admin_site.register(MyModel)
class MyModelAdmin(ModelAdmin):
    pass
Run Code Online (Sandbox Code Playgroud)

但是,这只会引发错误TypeError: 'NoneType' object is not callable。现在是否有AdminSiteDjango子类的注册装饰器(1.9) 或者我错过了什么?

django django-admin

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