我设法使用以下代码添加jQuery自动完成项右侧的链接:
function onClientSelect(event, ui) {
// My handling code goes here
event.preventDefault();
}
$("#mypage input[name='client']").autocomplete({
minLength: 1,
appendTo: $(this).parent(),
source: '/filter_client/',
select: onClientSelect,
focus: function (event, ui) {
event.preventDefault();
},
}).data("ui-autocomplete")._renderItem = function (ul, item) {
return $("<li></li>")
.data("item.autocomplete", item)
.append("<a>" + item.label + "</a>")
.appendTo(ul);
};
Run Code Online (Sandbox Code Playgroud)
我的服务器以这种格式返回元素标签:
<div class="ac-item-lb">My Item Label</div>
<a class="ac-item-a" href="/url_to_go_to/" target="_blank">View Detail</a>
Run Code Online (Sandbox Code Playgroud)
我想要做的是当我点击"查看详细信息"时打开新选项卡中的链接,单击任何其他区域就像正常一样执行onClientSelect.但是,当前左键单击链接也会执行onClientSelect.打开链接的唯一方法是单击中间滚轮或鼠标右键,然后选择"在新选项卡中打开".
我尝试使用event.stopImmediatePropagation()在链接上附加一个click事件处理程序,但这似乎不起作用.有谁知道如何解决这个问题?
我刚注意到model_to_dict的一个错误,它跳过了模型中的所有DateTimeField,并且从不将它们转换为字典,而使用QuerySet的values()函数却没有.我在互联网上查看,但找不到其他人有同样的问题.我只是想确认这确实是其他人遇到的问题,看看人们如何解决它.在这种情况下,每个人都避免使用model_to_dict并尝试使用values()来模拟行为吗?或者有更好的解决方案吗?你的想法是什么?
谢谢!
以下是:
>>> member = Member.objects.get(id=1)
>>> member.create_time
datetime.datetime(2013, 2, 26, 6, 1, 2, tzinfo=<UTC>)
>>> model_to_dict(member)
{'verified': True, 'name': u'John', 'email': u'', 'phone': u'', 'id': 1L, 'password': u'4e3fc0574fbcdff16c8508339e', 'verify_token': u'5d98aacaba39eb7e'}
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,'create_time'字段不在字典中.我不得不手动插入它:
>>> obj = model_to_dict(member)
>>> obj
{'verified': True, 'name': u'John', 'email': u'', 'phone': u'', 'id': 1L, 'password': u'4e3fc0574fbcdff16c8508339e', 'verify_token': u'5d98aacaba39eb7e'}
>>> obj["create_time"] = member.create_time
>>> obj
{'verified': True, 'name': u'John', 'email': u'', 'phone': u'', 'create_time': datetime.datetime(2013, 2, 26, 6, 1, 2, tzinfo=<UTC>), 'id': 1L, 'password': u'4e3fc0574fbcdff16c8508339e', 'verify_token': …Run Code Online (Sandbox Code Playgroud) 我正在使用Djang +使用xhtml2pdf.pisa使用html + css生成PDF.但是,我遇到了CSS的各种奇怪问题.
以下是我的代码:
from django.template.loader import render_to_string
import cStringIO as StringIO
import xhtml2pdf.pisa as pisa
import cgi, os
def fetch_resources(uri, rel):
path = os.path.join(settings.STATIC_ROOT, uri.replace(settings.STATIC_URL, ""))
return path
def test_pdf(request):
html = render_to_string('pdf/quote_sheet.html', { 'pagesize':'A4', }, context_instance=RequestContext(request))
result = StringIO.StringIO()
pdf = pisa.pisaDocument(StringIO.StringIO(html.encode("UTF-8")), dest=result, link_callback=fetch_resources)
if not pdf.err:
return HttpResponse(result.getvalue(), mimetype='application/pdf')
return HttpResponse('Gremlins ate your pdf! %s' % cgi.escape(html))
Run Code Online (Sandbox Code Playgroud)
我的模板:
<!DOCTYPE HTML PUBLIC "-//W3C/DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
{% load static from staticfiles %}
{% load i18n …Run Code Online (Sandbox Code Playgroud) 我正在一个网站上显示来自DB的一些数据,这些数据经常变化(队列状态和聊天对话).我目前的设置是Apache/PHP/MySQL.当然,我希望避免每x秒轮询一次服务器,因为这不能很好地扩展.我想做反向ajax长轮询,但是,我已经读过Apache不能正常工作,因为它很快就会耗尽工作线程.还有很多其他的Web服务器来解决这个问题:nginx,龙卷风等等.但是,我的问题是,PHP是我所知道的唯一的服务器端脚本语言.此外,我已经编写了一些PHP脚本,所以如果可以,我想保留它们.只要我仍然可以使用PHP,我就可以切换服务器.
但在做一些调查研究后,我读过的人说PHP(PHP-FPM?)还创建的每个请求,这意味着如果我有上百个/千开放连接的过程中,将有数百/千流程,这也是问题所在.
我可以得出结论,使用PHP制作长轮询网站没有很好的可扩展方法吗?我应该放弃PHP并学习另一种服务器脚本语言吗?我可以继续开发使用我的当前设置(阿帕奇/ PHP)长轮询,但现在我不想脚本语言的选择构成任何限制我的系统的可扩展性,当我部署.所以我该怎么做?我对网络编程不是很有经验,所以如果有任何大师可以给我一些指示我会很感激!谢谢!
我已经编写了一个简单的django应用程序来测试ImageField,但我遇到的问题是upload_to似乎不起作用.以下是代码:
1 from django.db import models
2
3 # Create your models here.
4 class TestImage(models.Model):
5 img = models.ImageField(max_length=256, upload_to='images')
Run Code Online (Sandbox Code Playgroud)
在我的settings.py中,我有:
2 from os.path import dirname, join, abspath
3 __dir__ = dirname(abspath(__file__))
50 MEDIA_ROOT = join(__dir__, 'static')
55 MEDIA_URL = '/media/'
Run Code Online (Sandbox Code Playgroud)
然后我使用manage.py启动python shell:
jchin@ubuntu:~/workspace/testimage$ ./manage.py shell
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24)
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> import settings
>>> from image_app.models import TestImage
>>> p = TestImage(img='test.jpg') …Run Code Online (Sandbox Code Playgroud) django ×3
apache ×1
autocomplete ×1
click ×1
comet ×1
datetime ×1
imagefield ×1
javascript ×1
jquery ×1
long-polling ×1
model ×1
php ×1
pisa ×1
python ×1
reverse-ajax ×1
upload ×1
xhtml2pdf ×1