小编Int*_*tss的帖子

NSXMLParser的解析方法是否异步

NSXMLParser的解析方法是异步的吗?

换句话说,如果我有一个NSXMLParse对象,并且我[someParseObject parse]从主线程调用,它会阻止主线程吗?

iphone concurrency cocoa objective-c nsxmlparser

10
推荐指数
1
解决办法
5023
查看次数

我可以修补NilClass修复缺少方法的nil吗?

在其他语言中,例如(objective-c)调用nil对象上的方法会无声地失败并返回nil但是在ruby中你会得到这样的错误......

undefined method `some_method' for nil:NilClass
Run Code Online (Sandbox Code Playgroud)

哪个(对我来说)导致代码如下:

if some_object && some_object.cool?  # instead of if some_object.cool?
  # do some cool stuff
end
Run Code Online (Sandbox Code Playgroud)

要么

some_object.do_awsome_thing if some_object
Run Code Online (Sandbox Code Playgroud)

这一切似乎都是倒退和奇怪的.

两个问题

  1. 我做错了什么,处理零对象可能性的正确方法是什么

  2. 如果我只是修补了nil对象为missing_methods返回nil,会发生什么样的可怕糟糕的事情?

IE:

class NilClass
  def missing_method
    nil
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby null

10
推荐指数
2
解决办法
1520
查看次数

什么是"?-mix:"在正则表达式中的含义

"?-mix:"在正则表达式中的含义是什么,这在javascript/jQuery中是否有效?如果它无效,那么什么是合适的替代品.

更新:这是完整的正则表达式/(?-mix:^[^,;]+$)/

它用于Chrome中的javascript,我收到以下错误:

Uncaught SyntaxError: Invalid regular expression: /(?-mix:^[^,;]+$)/: Invalid group

注意:我发现这有用:如何将ruby正则表达式转换为javascript? - (?i-mx:..)和Rails 3.0.3

javascript regex jquery

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

活动模型序列化器,没有数组根,但有子根

我已将活动模型序列化器 gem 添加到项目中,它破坏了一堆东西,我们的一个 api 有一个我需要保留的非常特定的格式,不幸的是,我似乎无法获得遗留行为。

\n\n
#Models\nclass Parent < ActiveRecord::Base\n  attr_accessable, :id, :name, :options\n  has_many :children\nend\n\nclass Child < ActiveRecord::Base\n  attr_accessable, :id, :name\nend\n\n#Controller\nclass ParentsController < ApplicationController\n\n  respond_to :json\n\n  def index\n    #Was\n    @parents = Parent.all\n    respond_with @parents, :include => [:children]\n\n    #Is (and is not working)\n    @parents = Parent.includes(:children)\n    respond_with @parents, each_serializer: ::ParentsSerializer, root: false  #Not working\n  end\n...\nend\n\n#Serializer\nclass ParentSerializer < ActiveModel::Serializer\n  attrs = Parent.column_names.map(&:to_sym) - [:options]\n  attributes(*attrs)\n  has_many :children\n\n  def filter(keys)\n    keys.delete :children unless object.association(:children).loaded?\n    keys.add :options\n    keys\n  end\nend\n
Run Code Online (Sandbox Code Playgroud)\n\n

所需输出

\n\n
[\n\xc2\xa0\xc2\xa0{\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0"parent": …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails active-model-serializers

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

安装rubygems时出错

尝试安装rubygems版本1.3.7时出现以下错误

~/Downloads/rubygems-1.3.7
$ ruby setup.rb 
ERROR:  While executing gem ... (Errno::EACCES)
   Permission denied - /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/gem
Run Code Online (Sandbox Code Playgroud)

知道是什么原因引起的.我以前安装过RVM.

谢谢

ruby rubygems

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

使用UISlider而无需用户交互

我有一个自定义的UISlider,我想用它向用户显示信息,我不希望用户能够与滑块进行交互.我试过了

mySlider.enabled = NO;
Run Code Online (Sandbox Code Playgroud)

但滑块变灰,看起来不像我想要的样子.

那么,如何将UIControl设置为禁用而不"灰化"它.

uislider uicontrol ios

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

/ usr/bin/env:ruby_executable_hooks:没有这样的文件或目录

我正在尝试使用Capistrano 3.0/Thin/NGINX部署到Raspberry Pi我已经让它工作了,但在我的重启块我有

namespace :deploy do

  desc 'Restart application'
  task :restart do
    on roles(:app), in: :sequence, wait: 5 do
      execute '/etc/init.d/thin restart'
      execute 'sudo /etc/init.d/nginx restart'
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

对此我很感兴趣

 INFO [128fb9a3] Running /etc/init.d/thin restart on raspberrypi.local
DEBUG [128fb9a3] Command: /etc/init.d/thin restart
DEBUG [128fb9a3]    /usr/bin/env: 
DEBUG [128fb9a3]    ruby_executable_hooks
DEBUG [128fb9a3]    : No such file or directory
DEBUG [128fb9a3]
Run Code Online (Sandbox Code Playgroud)

我在这里尝试了答案,但没有成功.

如果我通过SSH连接到PI并以root身份运行它们,这些命令似乎工作正常.

我应该提一下,我几乎使用了这个教程:http://creativepsyco.github.io/blog/2013/04/10/deploying-rails-on-nginx-and-thin/来设置东西

capistrano nginx thin raspberry-pi

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

将变量传递给ember把手

我有一个Ember.js ArrayController和一些看起来像这样的把手代码

<p>{{length}} {{pluralize length "thing"}}</p>
Run Code Online (Sandbox Code Playgroud)

然后我有一个看起来像的车把帮手

Handlebars.registerHelper('pluralize', function(count, str){
    debugger;
    return (count > 1 ? str+"s" : str);
  }
); 
Run Code Online (Sandbox Code Playgroud)

当调试器中断时,我发现看到的count = 'length'不是我期望的数字.

什么给出了什么?什么是完成我明显任务的正确方法.

handlebars.js ember.js

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