小编Ben*_*ger的帖子

如何在Rails 3.1上关闭自动样式表/ javascript生成?

我有一个Rails 3.1的项目,我的工作,但我不希望controller_name.css.sasscontroller_name.js.coffee每个I运行时都生成rails generate controller controller_name.我可以发誓我已经在互联网上的某个地方看到了这个设置,但我现在找不到它的生命.它是什么?

请记住,我仍然想要使用Asset Pipeline和CoffeeScript/Sass集成,但我正在以自己的方式组织这些文件.

我很确定答案是命令行参数,但是使用生成器设置或隐藏文件或其他东西来关闭它的奖励点.

编辑:我找到了它的命令行标志.

rails generate controller controller_name --assets=false
Run Code Online (Sandbox Code Playgroud)

或类似的东西(该行实际上出错,但它也不会产生资产).此处的API 显示:assets => true为默认选项.如何将其更改为false并在每次生成控制器时始终为false?

ruby sass coffeescript ruby-on-rails-3.1

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

Coredata删除规则混淆,xcode

我在两个实体之间有一个核心数据关系,如下所示:

Entity A                        Entity B
aRelationship <-------------->> bRelationship
Run Code Online (Sandbox Code Playgroud)

将删除规则设置为级联.

也许我有这个错误,但我认为如果这两个关系的删除规则都设置为"Cascade",那么以下时间是......

[context deleteObject:EntityA];
Run Code Online (Sandbox Code Playgroud)

...它还会删除与之关联的所有实体B. 但是,当我记录我的所有实体B时,我似乎错了.

请问有人可以解释一下我的困惑吗?

非常感谢你.

iphone xcode core-data objective-c ios

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

Rails 3.1 with Asset Pipeline,link_to:确认消息显示两次?

好的,所以我看到这个问题是由jQuery或Prototype的多个链接引起的,但我可以确认我只在整个页面链接到jQuery 一次.我的问题是:当我link_to确认删除时,弹出窗口显示两次.这是我模板中的适用代码(用Slim编写):

link_to('Destroy', depot_path(@depot.id), :confirm => "Really?", :method => :delete)
Run Code Online (Sandbox Code Playgroud)

我运行的Rails 3.1.0与资产管道打开,用gem 'jquery-rails'在我Gemfile,下面是我的application.js文件(这是由链轮的资产管道编译).

//= require jquery
//= require jquery_ujs
//= require 'underscore'
//= require 'backbone' 
Run Code Online (Sandbox Code Playgroud)

underscore.jsbackbone.js我的/vendor/assets/javascripts/目录中,链轮似乎找到了那些没关系.我还搜索了application.jssprockets提供的文件,jQuery只在那里一次,而jQuery UJS只在那里一次.当我的页面呈现时,这就是我的头部样子(我省略了csrf-token显示的值,FWIW).

<head>
  <meta content="text/html; charset=utf-8" http-equiv="content-type">
  <title>Administration</title>
  <link href="/assets/screen.css" media="screen" rel="stylesheet" type="text/css" />
  <script src="/assets/application.js" type="text/javascript"></script>
  <meta content="authenticity_token" name="csrf-param" />
  <meta content="--token--omitted--" name="csrf-token" />
  <script src="/assets/common/subdata.js" type="text/javascript"></script>
  <link href="/assets/show.css" media="screen" rel="stylesheet" …
Run Code Online (Sandbox Code Playgroud)

jquery ruby-on-rails ruby-on-rails-3.1 sprockets asset-pipeline

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

无法用XCode/Obj-C编译Cocoapods - "Pods-prefix.pch.dia:没有这样的文件或目录"

我正在使用XCode 4.5.1和iOS 6.0基础SDK.

这是我收到的错误:

i686-apple-darwin11-llvm-gcc-4.2: /Users/fahim/Library/Developer/Xcode/DerivedData/Currenthiphop-emodxxwwaiojlcboaxuodksuwuww/Build/Intermediates/PrecompiledHeaders/Pods-prefix-evibdktwbatdnbabmrlnderfsxxi/Pods-prefix.pch.dia: No such file or directory

Pods-prefix-xxx目录中只有一个文件: Pods-prefix.pch.pth.hash-criteria

这是我的Podfile:platform:ios

pod 'LibComponentLogging-Core'
pod 'LibComponentLogging-LogFile'
pod 'LibComponentLogging-qlog' 
pod 'LibComponentLogging-pods'

pod 'Facebook-iOS-SDK'
pod 'RestKit'
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏.谢谢!

xcode gcc objective-c ios cocoapods

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

在F#项目中使用C#库?

我对F#很新鲜,但我真的想学习它.我认识Python,我知道C#.事实上,我有一个我自己制作的C#库; 它是Rdio API(我将其命名为RdioSharp)的包装器,我可以成功地将其引入另一个C#项目并调用它,使用它,获取数据......它的工作原理.

我想开始在F#项目中使用这个C#库,但它无法正常工作.这里简要介绍一下C#代码的样子.

namespace RdioSharp {
    public class RdioManager {
        public RdioManager() { }
    }
}
Run Code Online (Sandbox Code Playgroud)

我在我的FSharpTest项目中添加了对DLL的引用,我已经提取了一个.fsx文件,我已经尝试了以下,每行下面(再次,请记住,我真的不知道我在做什么) .

open RdioSharp
open RdioSharp.dll
#r "RdioSharp.dll"
#r "C:\Path\To\Library\RdioSharp.dll"
Run Code Online (Sandbox Code Playgroud)

我无法想出这个.我知道如何使用系统F#库,但是如何在F#中引用C#库?可能吗?这还有足够的信息吗?

我已经看到了这个这个(这更接近我的问题)但是那些人都比我更了解F#,他们远远超出了我的问题.

在交互式窗口中,当打入时#r "RdioSharp.dll";;,我得到了这个可爱的错误.

error FS0084: Assembly reference 'RdioSharp.dll' was not found or is invalid
Run Code Online (Sandbox Code Playgroud)

c# f# reference visual-studio

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

在UIActivityViewController和UIActivityItemSource中执行操作的初始文本和paperclipped-URL?

最后通过关于新UIActivityViewController类和UIActivityItemSource协议的Apple(相当令人沮丧的)文档来完成它,我正在尝试将不同的数据集发送到从活动视图调用的不同操作.为了简化事情,我正在研究两件事.

  1. 一个Facebook发帖动作,应该说"看看这个!" 并附上一个URL到帖子(用那个可爱的小回形针).
  2. 一个Twitter发布动作,应该说"用#hashtag检查这个!" 并附加相同的URL(使用相同的回形针).

这是我现在实施的代码.

- (id)activityViewController:(UIActivityViewController *)activityViewController itemForActivityType:(NSString *)activityType {
    if ([activityType isEqualToString:UIActivityTypePostToFacebook]) {
        return @"Check this out!";
    } else if ([activityType isEqualToString:UIActivityTypePostToTwitter]) {
        return @"Check this out, with #hashtag!";
    }

    return @"";
}

- (id)activityViewControllerPlaceholderItem:(UIActivityViewController *)activityViewController {
    return @"";
}
Run Code Online (Sandbox Code Playgroud)

然后当我设置这个活动视图控制器(它在同一个类中)时,这就是我所做的.

UIActivityViewController *activityView = [[UIActivityViewController alloc] initWithActivityItems:@[self] applicationActivities:nil];
[self presentViewController:activityView animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

我的困境是如何附加该NSURL对象.调用iOS 6 SL级发布模式时相对容易; 您只需调用各个方法来附加URL或图像.我怎么去这里呢?

我会注意到,如果我只返回NSString对象,而不是返回对象,它们会显示回形针,帖子中没有正文.如果我返回这两个项目的数组,则根本不显示任何内容.-activityViewController:itemForActivityTypeNSURL

iphone user-interface ios ios6

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

Backbone.js:如何通过模型ID数组过滤对象集合?

我有一个Backbone.Collection完整的模型; 让我们说模型是Car.这个系列是一个很棒的大清单Cars.我希望能够从列表中选择一些特定的汽车ID,然后才能从这个集合中获得所选的汽车对象.

我的代码块不起作用; 我确信有一种方法可以使用Backbone.js/Underscore.js ...我对Backbone/Underscore也很新鲜.

CarList = Backbone.Collection.extend({
    model: Car,
    filterWithIds: function(ids) {
        return this.filter(function(aCar) { return _.contains(ids, car.id); }
    }
});
Run Code Online (Sandbox Code Playgroud)

有什么指针吗?

javascript collections filter backbone.js underscore.js

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

OCUnit测试嵌入式框架

更新:我最终放弃并将GHUnit添加到我的项目中.我在几分钟内就开始使用GHUnit.

更新:您可以在此处下载Xcode项目:http://github.com/d11wtq/Cioccolata

我已经为我的Xcode项目添加了一个单元测试目标,但它在构建时找不到我的框架,说:

Test.octest could not be loaded because a link error occurred. It is likely that dyld cannot locate a framework framework or library that the the test bundle was linked against, possibly because the framework or library had an incorrect install path at link time.

我的框架(主项目目标)旨在嵌入,因此具有安装路径@executable_path/../Frameworks.

我已将框架标记为测试目标的直接依赖关系,并将其添加到"Link Binary with Libraries"构建阶段.

另外,我添加了"复制文件"的第一步(在它构建了依赖项之后),它只是将框架复制到单元测试包的Frameworks目录中.

有人有这方面的经验吗?我不确定我错过了什么.

编辑| 我很确定我不应该,因为框架不可执行,但我没有设置"测试主机"和"捆绑加载器".这应该(据我的理解)一切正常,因为测试包与框架链接并将像任何其他包一样加载它.

编辑| 我想我差不多了.我阅读了以下文章,该文章规定使用@rpath而不是@executable_path.

http://www.dribin.org/dave/blog/archives/2009/11/15/rpath/

在这种情况下,它非常有意义,因为OCUnit测试包不是可执行文件,它是一个普通的旧包,所以@executable_path不兼容.所以现在我的框架将其安装目录设置为@rpath,并且Test目标将其运行时搜索路径(rpath)定义为构建目录.这节省了我不得不将框架复制到测试包中,这意味着整个生成的框架本质上更灵活,因为它可以在任何地方生活.

现在,我也意识到我应该在Test目标上设置Bundle Loader,所以现在将其设置为框架二进制文件的路径.

我可以构建测试目标,我可以从框架中#import类,没有错误.但是一旦我尝试从框架中实例化一个类,我就会收到以下错误:

/Developer/Tools/RunPlatformUnitTests.include:412: note: Started tests for architectures 'i386' /Developer/Tools/RunPlatformUnitTests.include:419: …

xcode cocoa objective-c ocunit gh-unit

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

优先抢先调度

使用优先抢占调度时,优先级较高的优先级是否会产生优先级较低但突发时间较短的进程?

例如,如果我有:

    Arrival Time   Burst Time   Priority
P1       0             5           3
P2       2             6           1
P3       3             3           2
Run Code Online (Sandbox Code Playgroud)

Gannt图表看起来像这样吗?

| P1 | P2 | P3 | P1 |
0    2    8   11   16   
Run Code Online (Sandbox Code Playgroud)

scheduling process gantt-chart

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

Rails ActiveRecord:没有主键的遗留表显示nil为结果?

我有一个Rails应用程序,它将位于遗留数据库之上,其中包含一些我不得不处理的丑陋表格.一个是feature_attributes与之相关的表features.问题是该feature_attributes表没有主键.我不认为这是一个问题,但显然是.我的模型名称与表名不同,但我set_table_name用来指定正确的名称.

class Feature < ActiveRecord::Base
  has_many :feature_attributes
end

class FeatureAttribute < ActiveRecord::Base
  set_table_name 'feature_attribute'
  belongs_to :feature
end
Run Code Online (Sandbox Code Playgroud)

一旦我加载了一个我知道已经相关的功能feature_attributes并调用feature.feature_attributes它,我就会得到nil.事实上,甚至FeatureAttribute.first给了我nil.FeatureAttribute.any?退货的结果false.我担心ActiveRecord没有读取表中的任何数据,因为没有主键.那是怎么回事?

feature_attribute表包含以下列.

feature_id
attribute_name
attribute_value
created_date
modified_date
Run Code Online (Sandbox Code Playgroud)

救命!

我还要注意,直接针对MySQL服务器运行生成的SQL实际上可以获得我想要的行.

SELECT `feature_attribute`.* FROM `feature_attribute` WHERE `feature_attribute`.`feature_id` = 24;
Run Code Online (Sandbox Code Playgroud)

编辑:我很抱歉.下次我会学会检查我的database.yml.显然我正在从具有相同特征表的测试数据库中读取,但该feature_attribute表完全是空的.

我觉得自己像个白痴.谢谢大家的帮助; 我为你的麻烦投票给大家.我确实喜欢每个人的答案.(我可以自己投票吗?:))

database activerecord ruby-on-rails

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

使用makeObjectsPerformSelector:withObject:with false boolean

我有一个UITextField叫做的对象数组_fields.我希望能够立即向他们发送消息以将其设置为highlighted,然后执行相同操作以将该highlighted属性转换为NO.这部分代码有效.

[fields makeObjectsPerformSelector:@selector(setHighlighted:) withObject:@YES];
Run Code Online (Sandbox Code Playgroud)

但是,这一部分没有; 我无法做任何事情.

[fields makeObjectsPerformSelector:@selector(setHighlighted:) withObject:@NO];
Run Code Online (Sandbox Code Playgroud)

但这确实有效.

for (UITextField *field in fields) {
    field.highlighted = NO;
}
Run Code Online (Sandbox Code Playgroud)

是什么赋予了?我本来希望使用这个makeObjectsPerformSelector:withObject:消息,但我并没有太多的爱@NO.有人可以向我解释这种行为,或者告诉我,如果我做错了什么?

cocoa-touch foundation ios

4
推荐指数
2
解决办法
1819
查看次数

Carrierwave,Fog,Amazon S3,Rails 4

我正在尝试让Carrierwave与我的Amazon S3存储桶配合使用,但我运气不好.在我的config/initializers文件夹中,我有一个名为的文件carrierwave.rb.该文件包含以下内容:

CarrierWave.configure do |config|
  config.fog_credentials = {
      :provider               => 'AWS',
      :aws_access_key_id      => ENV['AWS_ACCESS_KEY_ID'],
      :aws_secret_access_key  => ENV['AWS_SECRET_ACCESS_KEY']
  }
  config.cache_dir = "#{Rails.root}/tmp/uploads"
  config.fog_directory  = ENV['AWS_S3_BUCKET']
  config.fog_public     = true
  config.fog_attributes = {'Cache-Control' => 'max-age=315576000'}
end
Run Code Online (Sandbox Code Playgroud)

我使用gem figaro作为容纳我的环境配置变量的机制.里面的application.yml,我定义的ENV['AWS_ACCESS_KEY_ID'],ENV['AWS_SECRET_ACCESS_KEY']ENV['AWS_S3_BUCKET'].

这三个变量似乎正在填充.使用FTP程序,我可以使用我在application.yml文件中定义的访问密钥和秘密访问密钥连接到我的amazon s3实例.我有三重检查,我的公开秘密密钥是正确的.

尝试在我的Rails应用程序中执行上载时,收到错误消息,指出:

Expected(200) <=> Actual(403 Forbidden) response => #<Excon::Response:0x007fb29a862ac8 
@data={:body=>"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Error><
Code>SignatureDoesNotMatch</Code>
<Message>The request signature we calculated does not match the signature you provided. …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails amazon-s3 amazon-web-services

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