问题列表 - 第31547页

iphone - performSelectorOnMainThread返回值

我有以下方法:

- (NSMutableArray *)getElements:(NSString *)theURL;
Run Code Online (Sandbox Code Playgroud)

我想知道是否有办法使用performSelectorOnMainThread调用该方法,以便我可以获得返回值.到目前为止,我尝试过:

myArray = [object performSelectorOnMainThread:@selector(getElements:)
                                   withObject:url waitUntilDone:YES];
Run Code Online (Sandbox Code Playgroud)

但它不起作用,因为performSelectorOnMainThread返回void.我该怎么解决这个问题?

iphone multithreading cocoa-touch

9
推荐指数
1
解决办法
4923
查看次数

为什么有些变量是参数而其他变量不是?

这可能是什么原因:

public function __construct($host, $port, $timeout = 5){
    $errnum = 0;
    $errstr = ''; 
Run Code Online (Sandbox Code Playgroud)

而不是这个:

public function __construct($host, $port, $errnum = 0, $errstr = '', $timeout = 5){
Run Code Online (Sandbox Code Playgroud)

为什么有些人是params而有些人不是?

非常感谢,MEM

php

0
推荐指数
1
解决办法
73
查看次数

访问外部SVG文件中定义的DOM对象

SVG标准允许使用和引用外部SVG文件.

我有一个文件circle.svg定义了一个id为"the_circle"的圆形对象.从主SVG文件中我可以使用SVG链接包含此圆圈并为其设置动画.

我也想通过javascript访问相同的圈子对象,我该怎么做?什么是javascript相当于xlink:href="url(#the_image)#the_circle"

使用document.getElementById('the_image')我只能访问SVGImageElement,但不能访问包含的SVG中定义的对象.

<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >

  <image 
    id="the_image"
    x="0" y="0"  width="100%" height="100%"
    xlink:href="circle.svg" />

  <animateTransform     
    xlink:href="url(#the_image)#the_circle"

    attributeName="transform" attributeType="XML"
    type="translate" 
    from="0" to="25"
    dur="1s" repeatCount="indefinite" 
    additive="replace" fill="freeze" />
</svg>
Run Code Online (Sandbox Code Playgroud)

javascript svg dom

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

如何编写Rake任务将数据导入Rails应用程序?

目标:使用CRON任务(或其他预定事件)通过每晚从现有系统导出数据来更新数据库.

在现有系统中创建/更新/删除所有数据.该网站没有直接与该系统集成,因此rails应用程序只需要反映数据导出中出现的更新.

我有一个.txt约5,000种产品的文件,如下所示:

"1234":"product name":"attr 1":"attr 2":"ABC Manufacturing":"2222"
"A134":"another product":"attr 1":"attr 2":"Foobar World":"2447"
...
Run Code Online (Sandbox Code Playgroud)

所有值都是用双引号(")括起来的字符串,用冒号(:)分隔

领域是:

  • id: 唯一身份; 字母
  • name: 产品名称; 任何角色
  • 属性列:字符串; 任何字符(例如,大小,重量,颜色,尺寸)
  • vendor_name:string; 任何角色
  • vendor_id:独特的供应商ID; 数字

供应商信息在当前系统中未标准化.

这里的最佳做法是什么?是否可以删除产品和供应商表并在每个周期重写新数据?或者仅添加新行并更新现有行更好?

笔记:

  1. 此数据将用于生成Orders将通过夜间数据库导入持续生成的数据.OrderItems将需要连接到数据文件中指定的产品ID,因此我们不能依赖自动递增的主键对于每个导入都是相同的; 独特的字母数字ID将需要用于连接productsorder_items.
  2. 理想情况下,我希望导入器规范化供应商数据
  3. 我不能使用vanilla SQL语句,所以我想我需要编写一个rake任务才能使用Product.create(...)和设置Vendor.create(...)语法.
  4. 这将在EngineYard上实现

ruby import cron rake ruby-on-rails

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

Rails 3 has_one路由

我有两节课:

class User < ActiveRecord::Base
  :has_one :foo
end

class Foo < ActiveRecord::Base
  :belongs_to :user 
end
Run Code Online (Sandbox Code Playgroud)

Foo是可选的.

我创建了以下路由:

resources :users do
  resources :foo
end
Run Code Online (Sandbox Code Playgroud)

这导致以下路线:

GET    /users/:user_id/foo(.:format)              {:controller=>"foos", :action=>"index"}
user_foos POST   /users/:user_id/foo(.:format)              {:controller=>"foos", :action=>"create"}
new_user_foo GET    /users/:user_id/foo/new(.:format)          {:controller=>"foos", :action=>"new"}
GET    /users/:user_id/foo/:id(.:format)          {:controller=>"foos", :action=>"show"}
PUT    /users/:user_id/foo/:id(.:format)          {:controller=>"foos", :action=>"update"}
user_foo DELETE /users/:user_id/foo/:id(.:format)          {:controller=>"foos", :action=>"destroy"}
edit_user_foo GET    /users/:user_id/foo/:id/edit(.:format)     {:controller=>"foos", :action=>"edit"}
Run Code Online (Sandbox Code Playgroud)

问题:

  1. 看起来Index和Show操作是多余的.是否应该删除其中一个?如果是这样,哪一个?
  2. 似乎不需要Show动作中的:id参数,因为user_id是foos表中的外键,每个用户只有一个foo.我错了吗?
  3. 如果没有foo,我想有一种优雅的方式来路由到New动作.一种选择是测试@ user.foo.nil?在FooController的Show或Index操作中,然后重定向到New操作.有没有更好的办法?

谢谢你的时间.

routing has-one ruby-on-rails-3

11
推荐指数
1
解决办法
5536
查看次数

如何强制Django忽略任何缓存并重新加载数据?

我正在使用来自未通过HTTP请求调用的进程的Django数据库模型.该过程应该每隔几秒轮询一次新数据并对其进行一些处理.我有一个循环,睡眠几秒钟,然后从数据库中获取所有未处理的数据.

我所看到的是,在第一次获取后,进程永远不会看到任何新数据.我运行了一些测试,看起来Django正在缓存结果,即使我每次都在构建新的QuerySet.为了验证这一点,我从Python shell中做到了这一点:

>>> MyModel.objects.count()
885
# (Here I added some more data from another process.)
>>> MyModel.objects.count()
885
>>> MyModel.objects.update()
0
>>> MyModel.objects.count()
1025
Run Code Online (Sandbox Code Playgroud)

如您所见,添加新数据不会更改结果计数.但是,调用管理器的update()方法似乎可以解决问题.

我找不到有关该update()方法的任何文档,也不知道它可能做的其他坏事.

我的问题是,为什么我看到这种缓存行为,这与Django文档所说的相矛盾?我该如何防止它发生?

python django caching

74
推荐指数
5
解决办法
4万
查看次数

排序我不知道它有什么类型的集合?

有没有一种方法在.NET中我可以对我的集合进行排序,当我不知道运行时什么类型的对象我会传递给这个集合,也避免反射.

有什么想法吗?

c# collections

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

onclick()和onClientClick()之间的区别?

如果我同时使用两者onclick()并且onClientClick()我可以确保只有在客户端函数返回TRUE后才会调用服务器端,反之亦然?

例如:

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
<%@ Import Namespace="System.Xml" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 <%
 protected void save_n_display(object sender, EventArgs e)
 {
    // This must be called when validate() returns true...
 }
 %>

<asp:Button ID="Button1"  OnClientClick="validate()" onClick="save_n _display" "Text="Check" runat="server" />


<script type="text/javascript" language="javascript">
    function validate()    // client side Validation is done
    {

    }
</script>
Run Code Online (Sandbox Code Playgroud)

所以,我可以使用onclick()onClientClick()或做我需要不同的这个东西吗?我甚至尝试将变量从javascript传递给asp函数,因此当validate返回true时,将调用save_n _display.

javascript asp.net

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

手动隐藏jquery facebox模态

我在我的facebox模式上使用我的自定义关闭按钮来关闭它...它工作正常(即)它关闭但它在我点击关闭按钮后附加到页面的底部...

<a onclick="$.facebox.close();" href="javascript:void(0);" class="close"> 
  <img alt="Close the popup" src="images/close.png" title="close" 
     class="close_image" /> 
</a>
Run Code Online (Sandbox Code Playgroud)

这是我得到的,

alt text http://img825.imageshack.us/img825/3739/foo.jpg

这是我想要做的,

$(document).bind('close.facebox', function() {
        $(document).unbind('keydown.facebox')
        $('#aspnetForm').append($('#facebox .content').html());
        /// extra line to make sure there's no flashing effect as the facebox closes: the content is still in there too!
        $('#facebox .content').children().css({ 'display': 'block' });
        $('#facebox').fadeOut(function() {
            $('#facebox .content').removeClass().addClass('content')
            hideOverlay()
            $('#facebox .loading').remove()
        })

    })
Run Code Online (Sandbox Code Playgroud)

我的页面有这个,

   $(document).ready(function($) {
        $.facebox.settings.opacity = 0.2;
        $('a[rel*=facebox]').facebox();
     });

  <div id="forgetPassword" style="display:none"> 
    //content
   </div>
Run Code Online (Sandbox Code Playgroud)

jquery modal-dialog facebox

0
推荐指数
1
解决办法
3226
查看次数

使用scala actor时我应该如何处理阻塞操作?

我两天前开始学习scala actor框架.为了使这些想法具体化,我决定实现一个基于TCP的echo服务器,它可以处理多个同时连接.

以下是echo服务器的代码(不包括错误处理):

class EchoServer extends Actor {
  private var connections = 0

  def act() {
    val serverSocket = new ServerSocket(6789)

    val echoServer = self
    actor { while (true) echoServer ! ("Connected", serverSocket.accept) }

    while (true) {
      receive {
        case ("Connected", connectionSocket: Socket) =>
          connections += 1
          (new ConnectionHandler(this, connectionSocket)).start
        case "Disconnected" =>
          connections -= 1
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

基本上,服务器是处理"已连接"和"已断开连接"消息的Actor.它委托监听一个匿名actor的连接,该匿名actor调用serverSocket上的accept()方法(阻塞操作).当连接到达时,它通过"已连接"消息通知服务器并将其传递给套接字以用于与新连接的客户端进行通信.ConnectionHandler类的实例处理与客户端的实际通信.

这是连接处理程序的代码(包括一些错误处理):

class ConnectionHandler(server: EchoServer, connectionSocket: Socket)
    extends Actor {

  def act() {
    for …
Run Code Online (Sandbox Code Playgroud)

scala actor

7
推荐指数
1
解决办法
1259
查看次数