我有两个模型,Property并且Image通过外键关联,因此每个模型Property都有的多个实例Image。我正在尝试检索所有属性的查询集-列出所有字段-以及每个属性具有的图像数。我知道我可以作为两个不同的查询来执行此操作,但是我并不认为这是一种特别优雅的方法,并且由于通过XMLHttpRequest检索此信息而被证明效率不高。
这些模型定义如下:
class Property(models.Model):
title = models.CharField('title', max_length=255)
created = models.DateTimeField('created', auto_now_add=True)
modified = models.DateTimeField('modified', auto_now=True)
class Meta:
pass
class Image(models.Model):
prop_id = models.ForeignKey(Property)
image_file = models.ImageField('image file', upload_to='/path/to/image/')
class Meta:
pass
Run Code Online (Sandbox Code Playgroud)
我遵循此处发布的答案:跨反向关系的Django聚合,因为我认为这是一个类似的问题,但是我发现它返回一个空的查询集。
感谢您提供任何帮助。
编辑:
我运行的查询是:
Property.objects.all().annotate(image_count=Count('image')).order_by('-image_count')
Run Code Online (Sandbox Code Playgroud)
编辑2:
经过一些试验后,我找到了解决方案,尽管我很确定这可以视为错误/未记录的问题:
Property.objects.all().annotate(Count('image')).order_by('-image__count')
Property.objects.all().annotate(total_images=Count('image')).order_by('-total_images')
Run Code Online (Sandbox Code Playgroud)
这两种方法都可以,但是命名注释image_count却没有。如果不深入研究Django源代码,我就无法真正推测出为什么会发生这种情况。
这在所有浏览器中都非常快:
var curLayer = new OpenLayers.Layer.Text("layer", { location: "test.txt"});
map.addLayer(curLayer);
Run Code Online (Sandbox Code Playgroud)
但是,以下代码在Firefox和Chrome中速度很快,但在IE8中速度极慢(加载500个功能需要30分钟!):
var curLayer = new OpenLayers.Layer.Vector("layer", {
protocol: new OpenLayers.Protocol.HTTP({
url: "test.txt",
format: new OpenLayers.Format.Text()
})
});
map.addLayer(curLayer);
Run Code Online (Sandbox Code Playgroud)
由于我更喜欢使用的原因OpenLayers.Layer.Vector,但不能由于IE性能问题.
有人知道一个好的解决方案吗?最后,我需要在地图上加载许多可自定义弹出窗口的可点击点功能.
我在xCode中进行了"构建和分析",并在我的init-method中将普通int设置为0时获得"空指针的取消引用".我在下面的代码中注意到我收到消息的行.我正在为iPhone开发.
Bric.m
#import "Bric.h"
@implementation Bric
- (id)initWithImage:(UIImage *)img:(NSString*)clr{
if (self = [super init]) {
image = [[UIImageView alloc] initWithImage:img];
}
stepX = 0; //It's for this line I get the message
stepY = 0;
oldX = 0;
color = [[NSString alloc]initWithString:clr];
visible = YES;
copied = NO;
return self;
}
@end
Run Code Online (Sandbox Code Playgroud)
Bric.h
#import <Foundation/Foundation.h>
@interface Bric : NSObject {
int stepX;
int stepY;
}
-(id)initWithImage:(UIImage *)img:(NSString *)clr;
@end
Run Code Online (Sandbox Code Playgroud)
这不是完整的代码,粘贴我认为有用的东西.
由于我没有使用指针,我发现这很奇怪.我怎么得到这个消息?
谢谢和问候,尼克拉斯
我有一个jstree在页面上有几个子树,并希望在选择一个分支时显示一些东西.显示的文本应该出现在树的旁边,但由于某种原因,jstree占用了div中的所有空间,因此文本div位于下面.树和div应该相对于封装div定位并向左浮动.
有没有办法收缩树的宽度(在树div上设置样式="width = 100px"不起作用)?或者将文本放在树旁边的另一种方法,而不是让它绝对放置?
$ab = "asljdhashdklasjkl ;dajs;ld";
Run Code Online (Sandbox Code Playgroud)
我想要前10个字符$ab.
可以使用该splice功能吗?
我决定使用Shiro来保护我的web应用程序.我使用tomcat应用服务器,maven,hibernate和jsf.现在我尝试配置Shiro但遇到了一些问题.
这是我的文件:
--- ---的pom.xml
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-core</artifactId>
<version>1.0.0-incubating</version>
</dependency>
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-web</artifactId>
<version>1.0.0-incubating</version>
</dependency>
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-aspectj</artifactId>
<version>1.0.0-incubating</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
--- ---的web.xml
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>
javax.faces.webapp.FacesServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>welcome.xhtml</welcome-file>
</welcome-file-list>
<filter>
<filter-name>SecurityFilter</filter-name>
<filter-class>org.apache.shiro.web.servlet.IniShiroFilter</filter-class>
<init-param>
<param-name>config</param-name>
<param-value>
[main]
myrealm = com.misPartidos.web.MyRealm
</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SecurityFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
Run Code Online (Sandbox Code Playgroud)
如果我部署到服务器,我收到此错误消息:
ERROR: Exception starting filter ShiroFilter
java.lang.ClassNotFoundException: org.apache.shiro.web.servlet.IniShiroFilter
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:269)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:422)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4001)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4651)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785) …Run Code Online (Sandbox Code Playgroud) 是否有一种方法可以将列从data.frame中的一个位置移动到下一个位置 - 而无需键入全新的data.frame()
例如:
a <- b <- c <- d <- e <- f <- g <- 1:100
df <- data.frame(a,b,c,d,e,f,g)
Run Code Online (Sandbox Code Playgroud)
现在让我们说我想在"一个"面前"g"
我可以重新输入它
df <- data.frame(g,a,b,c,d,e,f)
Run Code Online (Sandbox Code Playgroud)
但是没有更快的方法吗?(想象一下1500+列)
嗨我想重复显示gallary元素.这意味着当我向前或向后移动时,不需要结束gallary图像.如果我采用23个elemets数组将图像分配给gallary,那么当我向前或向后移动时,这些图像会再次重复对于这个,请给我一些建议.谢谢
我有一个客户端进程尝试使用'BasicHttpBinding'向服务器发出多个并发请求.客户端尝试向服务器发出10个或更多并发请求,但服务器日志表明在任何时候最多只有2个并发请求正在进行中,这显然会降低客户端生成的吞吐量.在客户端,似乎有一些限制正在进行.我们由服务提供商提供的配置包含如下行为:
<basicHttpBinding>
<binding name="BasicHttpBinding_IService" closeTimeout="00:01:00"
openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="01:00:00"
allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
maxBufferSize="2047483647" maxBufferPoolSize="524288" maxReceivedMessageSize="2047483647"
messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="1073741823"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Windows" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
Run Code Online (Sandbox Code Playgroud)
此外,我们在客户端中有以下连接管理条目:
<system.net>
<connectionManagement>
<add address="*" maxconnection="10" />
</connectionManagement>
</system.net>
Run Code Online (Sandbox Code Playgroud)
那么我需要做些什么来防止在客户端上发生限制,以便可以有超过2个最大并发请求到WCF服务,谢谢
我真的不明白......我在这里做错了什么?
jQuery(function(){
//vars
var conveyor = jQuery(".content-conveyor", jQuery("#slideWrapper")),
item = jQuery(".item", jQuery("#slideWrapper"));
conveyor.css("width", item.length * parseInt(item.css("width")));
var sliderOpts = {
max: (item.length * parseInt(item.css("width"))) - parseInt(jQuery("#slideContent", jQuery("#slideWrapper")).css("width")),
slide: function(e, ui) {
conveyor.css("left", "-" + ui.value + "px");
}
};
jQuery("#slider").slider(sliderOpts);
});
Run Code Online (Sandbox Code Playgroud) android ×1
css ×1
debugging ×1
django ×1
html ×1
iphone ×1
java ×1
jquery-ui ×1
jstree ×1
objective-c ×1
openlayers ×1
perl ×1
python ×1
r ×1
security ×1
shiro ×1
slider ×1
throttling ×1
wcf-client ×1
xcode ×1