小编Sri*_*aju的帖子

我如何更改<hr>标签的厚度

我想在CSS中更改水平规则的粗细.我知道它可以像HTML那样完成 -

<hr size="10">
Run Code Online (Sandbox Code Playgroud)

但我听说MDN上提到的这个已被弃用.在CSS我尝试使用,<hr>但它不会改变厚度.我希望height:1px线条很<hr>厚.

我在Ubuntu上使用Firefox 3.6.11

html css user-interface

294
推荐指数
7
解决办法
42万
查看次数

为什么不将python嵌套函数称为闭包?

我已经在Python中看到并使用了嵌套函数,它们与闭包的定义相匹配.那他们为什么叫nested functions而不是closures

嵌套函数是不是闭包,因为它们不被外部世界使用?

更新:我正在阅读关于闭包的内容,这让我想到了关于Python的这个概念.我在下面的评论中搜索并找到了某人提到的文章,但我无法完全理解该文章中的解释,所以这就是我提出这个问题的原因.

python closures nested-function

234
推荐指数
6
解决办法
9万
查看次数

你能将UIGestureRecognizer附加到多个视图吗?

UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapTapTap:)];
[self.view1 addGestureRecognizer:tapGesture];
[self.view2 addGestureRecognizer:tapGesture];
[tapGesture release];
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,只view2识别了点击.如果我注释掉第三行,那么点击就会view1被识别出来.如果我是对的,你只能使用一次手势识别器,我不确定这是一个bug还是只需要一些文档.

objective-c uigesturerecognizer ios

221
推荐指数
5
解决办法
7万
查看次数

Facebook架构

我一直在寻找有关Facebook架构的文章/信息,他们应对的挑战和方式.他们使用什么以及他们使用的原因.他们如何扩展以及他们做什么的设计决策等等.主要是学习的基础.了解处理如此大量流量的网站可以为建筑师提供大量指示,以便在设计新网站时牢记某些内容.我正在分享我发现的东西.

  1. Facebook科学与社交图(视频)
  2. 在Facebook上扩展
  3. Facebook聊天架构
  4. Facebook博客
  5. Facebook Cassandra建筑与设计
  6. Facebook工程笔记
  7. Quora - Facebook架构
  8. Facebook为600M用户
  9. Hadoop及其在Facebook上的使用
  10. Facebook上的Erlang:聊天架构
  11. Facebook性能缓存
  12. Facebook Connect架构

由于此网站的限制,我还有2个链接但无法发布.此外,请分享是否有任何更好的东西(不需要只与Facebook相关).

PS -我无法找到分享这项研究的好地方,因此这一举措.希望这有助于某人.

architecture facebook design-patterns

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

django-debug-toolbar没有显示出来

我看了其他问题但无法弄明白......

我做了以下安装django-debug-toolbar:

  1. pip install django-debug-toolbar
  2. 添加到中间件类:
MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    # Uncomment the next line for simple clickjacking protection:
    # 'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'debug_toolbar.middleware.DebugToolbarMiddleware',
)
Run Code Online (Sandbox Code Playgroud)

3添加了INTERNAL_IPS:

INTERNAL_IPS =('174.121.34.187',)

4为已安装的应用添加了debug_toolbar

我没有收到任何错误或任何内容,工具栏不显示在任何页面上,甚至不显示管理员.

我甚至将debug_toolbar模板的目录添加到了我的目录中 TEMPLATE_DIRS

python django django-debug-toolbar

129
推荐指数
10
解决办法
5万
查看次数

iOS启动后台线程

我的iOS设备上有一个小的sqlitedb.当用户按下按钮时,我从sqlite获取数据并将其显示给用户.

这个抓取部分我想在后台线程中执行它(不阻止UI主线程).我是这样做的 -

[self performSelectorInBackground:@selector(getResultSetFromDB:) withObject:docids];

在获取和稍微处理之后,我需要更新UI.但是因为(作为一种好的做法)我们不应该从后台线程执行UI更新.我这样打电话给selector主线程 -

[self performSelectorOnMainThread:@selector(showResults) withObject:nil waitUntilDone:NO];

但我的应用程序在第一步崩溃了.即启动后台线程.这不是在iOS中启动后台线程的方法吗?

更新1:之后[self performSelectorInBackground....我得到这个堆栈跟踪,没有资料什么那么-

在此输入图像描述

更新2:我甚至试过,开始这样的后台线程 - [NSThread detachNewThreadSelector:@selector(getResultSetFromDB:) toTarget:self withObject:docids];但我仍然得到相同的堆栈跟踪.

就这样我澄清一下,当我在主线程上执行此操作时,一切运行顺畅......

更新3这是我尝试从后台运行的方法

- (void)getResultSetFromDB:(NSMutableArray *)toProceessDocids
{
    SpotMain *mirror = [[SpotMain alloc] init];
    NSMutableArray *filteredDocids = toProceessDocids;

    if(![gMediaBucket isEqualToString:@""])
        filteredDocids = [mirror FetchDocIdsForMediaBucketWithDocID:filteredDocids mBucket:gMediaBucket numRes:-1];
    if(![gMediaType isEqualToString:@""])
        filteredDocids = [mirror FetchDocIdsForMediaType:filteredDocids mediaType:gMediaType numRes:-1];
    if(![gPlatform isEqualToString:@""])
        filteredDocids = [mirror FetchDocIdsForPlatformID:filteredDocids platformId:@"1" numRes:-1];

    self.resultSet = [mirror FetchObjectFromDocid:filteredDocids];
    [filteredDocids release];
    [mirror release];

    [self performSelectorOnMainThread:@selector(showResults) withObject:nil …
Run Code Online (Sandbox Code Playgroud)

multithreading objective-c core-foundation uikit ios

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

Django管理员ManyToMany内联"没有ForeignKey to"错误

我正在将Django管理员设置为以下模型:

class Quote(models.Model):                                                  
    author = models.CharField(max_length=100)                               
    quote = models.CharField(max_length=1000)                               
    tags = models.ManyToManyField('Tag')                                    

class Tag(models.Model):                                                    
    name = models.CharField(max_length=100)                                 
Run Code Online (Sandbox Code Playgroud)

使用以下代码:

class TagInline(admin.TabularInline):                                                                                               
    model = Tag                                                             

class QuoteAdmin(admin.ModelAdmin):                                         
    list_display = ('author', 'quote')                                      
    inlines = (TagInline,)                                                  

class TagAdmin(admin.ModelAdmin):                                           
    pass                                                                    

admin.site.register(Quote, QuoteAdmin)                                      
admin.site.register(Tag, TagAdmin)
Run Code Online (Sandbox Code Playgroud)

在尝试查看管理页面以添加时Quote,该页面显示错误说明<class 'quotes.models.Tag'> has no ForeignKey to <class 'quotes.models.Quote'>.在添加内联之前没有发生这种情况.有什么问题?如何正确添加Tag内联?

(我花了大约20分钟寻找答案;我发现了类似的问题,但他们的答案都没有对我有用.)

django django-models

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

Django DateField默认选项

我有一个具有日期时间字段的模型:

date = models.DateField(_("Date"), default=datetime.now())

当我在内置的django admin中检查应用程序时,DateField也会附加时间,因此如果您尝试保存它,则会返回错误.如何使默认日期成为日期?(datetime.today()也不起作用)

python django django-models

71
推荐指数
5
解决办法
13万
查看次数

Eratosthenes筛选 - 寻找Primes Python

只是为了澄清,这不是一个功课问题:)

我想找到我正在建造的数学应用程序的素数并且遇到了Eratosthenes的Sieve方法.

我用Python编写了它的实现.但它非常慢.比方说,如果我想找到不到200万的所有素数.大约需要20分钟.(此时我停了下来).我怎样才能加快速度呢?

def primes_sieve(limit):
    limitn = limit+1
    primes = range(2, limitn)

    for i in primes:
        factors = range(i, limitn, i)
        for f in factors[1:]:
            if f in primes:
                primes.remove(f)
    return primes

print primes_sieve(2000)
Run Code Online (Sandbox Code Playgroud)

更新: 我最终对这段代码进行了分析,发现花了很多时间从列表中删除一个元素.考虑到它必须遍历整个列表(最坏情况)才能找到元素然后将其删除然后重新调整列表(可能还有一些副本继续?),这是相当容易理解的.无论如何,我把字典列表删掉了.我的新实施 -

def primes_sieve1(limit):
    limitn = limit+1
    primes = dict()
    for i in range(2, limitn): primes[i] = True

    for i in primes:
        factors = range(i,limitn, i)
        for f in factors[1:]:
            primes[f] = False
    return [i for i in primes if primes[i]==True]

print primes_sieve1(2000000)
Run Code Online (Sandbox Code Playgroud)

python math primes sieve-of-eratosthenes

66
推荐指数
4
解决办法
9万
查看次数

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