我得到一个Capistrano配方与Bundler和Rails(3.0.3)应用程序一起工作,但是在使用某些基本功能方面遇到了麻烦.
在关于"使用Capistrano自动部署" 的Bundler文档之后,我正在尝试获取有关任务的更多信息,但由于某种原因它"不存在"......
$ cap -e bundle:install
The task `bundle:install' does not exist.
Run Code Online (Sandbox Code Playgroud)
安装了Capistrano(2.5.19)gem,我正试图从客户端(而不是服务器)的项目根目录执行该命令.
实际上cap -T没有显示任何与'bundle'或'install'相关的内容
$ cap -T
cap deploy # Deploys your project.
cap deploy:check # Test deployment dependencies.
cap deploy:cleanup # Clean up old releases.
cap deploy:cold # Deploys and starts a `cold' application.
cap deploy:migrate # Run the migrate rake task.
cap deploy:migrations # Deploy and run pending migrations.
cap deploy:pending # Displays the commits since your last deploy.
cap deploy:pending:diff # Displays the …Run Code Online (Sandbox Code Playgroud) 希望有人可能会看到我忽略的东西......
我试图让Capybara在一个现有的小应用程序中工作......而且我没有运气.
的Gemfile:
group :development, :test do
gem 'rspec-rails'
# gem 'webrat'
gem 'capybara', :git => 'git://github.com/jnicklas/capybara.git'
end
...
Run Code Online (Sandbox Code Playgroud)
两个地方的类似规格因各种原因而失败.不知道为什么?
规格/控制器/ pages_controller_spec.rb:
require 'spec_helper'
describe PagesController do
describe "GET 'about'" do
it "should be successful" do
# get 'about' #worked w/ webrat
# response.should be_success #worked w/ webrat
visit pages_about_path
# page.should have_content('About Us')
page.html.should match(/About/i)
end
it "should have title" do
# get 'about' #webrat
# response.should have_selector("title", :content => "About Us") #webrat
visit pages_about_path
page.should have_selector("title")
end
end …Run Code Online (Sandbox Code Playgroud) 我靠近......很接近......我能够上传单个文件就好了......但是,当我改变我的窗体的类型file_field来:multiple => true,所以我可以在我的一次上传的文件被包裹在一个上传多张图片array ...并且'accepts_nested_attributes_for`的'magic'丢失了.
编辑:
经过更多的考试,我想知道我是否还需要打扰accepts_nested_attributes_for?也许我应该只file_field, :multiple => true在我的Gallery表单中(而不是嵌套表单),然后在我的创建操作中创建新的库,然后params[:gallery][:photos_attributes]["0"][:image]手动循环遍历数组中的每个元素,可以这么说,调用@gallery.photos.create每个元素.?!?看起来很麻烦......但是我能想到的就是这些.
希望有更多Rails经验的人可以加入......
PARAMS:
{"utf8"=>"?",
"authenticity_token"=>"9jXvIwcllct7UyUfo6cvhEucQf2u3SY50SuaCLtFO4c=",
"gallery"=>{
"name"=>"First Gallery",
"photos_attributes"=>{"0"=>{
"image"=>[
#<ActionDispatch::Http::UploadedFile:0x00000104b78978
@original_filename="first_test_image.jpg",
@content_type="image/jpeg",
@headers="Content-Disposition: form-data; name=\"gallery[photos_attributes][0][image][]\"; filename=\"first_test_image.jpg\"\r\nContent-Type: image/jpeg\r\n",
@tempfile=#<File:/var/folders/bQ/bQYZC2ukFZCvbKzEDGRtJE+++TI/-Tmp-/RackMultipart20110622-4459-vz78ee>>,
#<ActionDispatch::Http::UploadedFile:0x00000104b78950
@original_filename="second_test_image.jpg",
@content_type="image/jpeg",
@headers="Content-Disposition: form-data; name=\"gallery[photos_attributes][0][image][]\"; filename=\"second_test_image.jpg\"\r\nContent-Type: image/jpeg\r\n",
@tempfile=#<File:/var/folders/bQ/bQYZC2ukFZCvbKzEDGRtJE+++TI/-Tmp-/RackMultipart20110622-4459-1jzhhyg>>
]
}
}
}, "commit"=>"Save", "action"=>"create", "controller"=>"galleries"}
#app/models/gallery.rb
class Gallery < ActiveRecord::Base
has_many :photos, :dependent => :destroy
accepts_nested_attributes_for :photos
end
#app/models/photo.rb
class Photo < ActiveRecord::Base
belongs_to :gallery
mount_uploader :photo, PhotoUploader
end
#config/routes.rb …Run Code Online (Sandbox Code Playgroud) 关于如何更新rubygems有点困惑.流程不断变化(或至少我从互联网上获得冲突的信息).
$ gem outdated
rubygems-update (1.8.10 < 1.8.11)
sass (3.1.8 < 3.1.10)
$ rvm gemset use global
$ gem outdated
rubygems-update (1.8.10 < 1.8.11)
Run Code Online (Sandbox Code Playgroud)
现在,在过去,我会使用rvm update --system安装rubygems-update,然后切换回我的工作宝石(从 global)和升级宝石的其余部分.
但是,最近,我转而rvm rubygems current按照RVM网站使用,但在撰写本文时,rvm并不知道rubygems-update 1.8.11.那么该怎么办?网站说我可以使用,rvm rubygems head但我有点害怕(非理性?)抓住开发分支.
有人能比我更了解这个,并且可以减轻我的恐惧,或者告诉我当他们失去同步时你如何接近rvm&rubygems ...因为它似乎正在发生更多......
我无法在Rails应用程序中使用Elasticsearch(和Tire)进行突出显示.我可以成功索引PDF附件并查询它们但我无法突出显示工作.
不熟悉ES所以不确定在哪里进行故障排除.将从映射和卷曲查询开始,但随时可以要求更多信息.
class Article < ActiveRecord::Base
include Tire::Model::Search
include Tire::Model::Callbacks
attr_accessible :title, :content, :published_on, :filename
mapping do
indexes :id, :type =>'integer'
indexes :title
indexes :content
indexes :published_on, :type => 'date'
indexes :attachment, :type => 'attachment',
:fields => {
:name => { :store => 'yes' },
:content => { :store => 'yes' },
:title => { :store => 'yes' },
:file => { :term_vector => 'with_positions_offsets', :store => 'yes' },
:date => { :store => 'yes' }
}
end
def to_indexed_json …Run Code Online (Sandbox Code Playgroud) 任何人都知道如何将twitter引导徽章(或标签)从实体更改为轮廓?

Objective-C中的单个下划线显然是为Apple的"内部"使用保留的(并且在Apple声明之前可用于私有实例变量).但是为什么他们会在他们的SQLiteBooks示例中为iPhone 使用双 -underscore呢?请参阅从MasterViewController.m获取的此片段:
+ (EditingViewController *)editingViewController {
// Instantiate the editing view controller if necessary.
if (__editingViewController == nil) {
__editingViewController = [[EditingViewController alloc] initWithNibName:@"EditingView" bundle:nil];
}
return __editingViewController;
}
Run Code Online (Sandbox Code Playgroud)
在这个论坛上提到了双重下划线,因为它与C有关 - 它是"compier的内部使用".我想我不知道这在这种情况下是如何适用的.
我在我的应用程序中需要一个ViewController,它的行为与SQLiteBooks示例项目中的一样,但是这个双下划线让我感到困惑.
我正在尝试做一些我认为相当简单的事情:让用户输入一个美元金额,将该金额存储在NSNumber(NSDecimalNumber?)中,然后在稍后的某个时间再次显示格式化为货币的金额.
我的麻烦不在于setNumberStyle:NSNumberFormatterCurrencyStyle并将浮动显示为货币.问题更多的是所述numberFormatter如何与这个UITextField一起工作.我可以找到一些例子.这个帖子来自十一月,这个给我一些想法,但给我留下了更多的问题.
我正在使用UIKeyboardTypeNumberPad键盘并了解我应该在显示的字段中显示$ 0.00(或任何本地货币格式)然后当用户输入数字以移动小数位时:
然后[numberFormatter numberFromString:textField.text]应该给我一个值,我可以存储在我的NSNumber变量中.
可悲的是,我还在苦苦挣扎:这真的是最好/最简单的方式吗?如果是这样,也许有人可以帮助我实施?我觉得UITextField可能需要一个代理响应每个按键,但不知道什么,在哪里以及如何实现它?!任何示例代码?我非常感谢!我搜索过高低......
Edit1:所以我正在研究NSFormatter的stringForObjectValue:以及我能找到的最接近benzado建议的东西:UITextViewTextDidChangeNotification.很难在其中任何一个上找到示例代码......所以如果你知道在哪里看,请告诉我?
有没有办法阻止用户在UITextField中移动光标?我希望它留在字符串的末尾.
我经常希望在Apple的文档中看到的方法/属性定义在最糟糕的情况下对我来说是最模糊和毫无意义的.例如,从以下方法描述NSNumberFormatter Class Reference:
setPartialStringValidationEnabled:
设置是否为接收器启用部分字符串验证.
Run Code Online (Sandbox Code Playgroud)- (void)setPartialStringValidationEnabled:(BOOL)b参数
b如果启用了部分字符串验证,则为YES,否则为NO.
所以,让我们假设我经历过的劣质教育系统以及我之前所做过的任何项目都没有涵盖Cocoa中的"部分字符串验证",我想再深入研究一下这个属性是什么关于.人们看哪儿(谷歌除外)?我不喜欢讨论论坛,因为我应该能够轻松地自己查找.
我已经遇到过这样的情况,因为我认为我可能会错误地接近Apple的文档.有什么建议?提示与技巧?第三方资源?
cocoa ×3
cocoa-touch ×3
uitextfield ×2
badge ×1
bundle ×1
bundler ×1
capistrano ×1
capybara ×1
carrierwave ×1
currency ×1
file-upload ×1
html5 ×1
iphone ×1
less ×1
objective-c ×1
outline ×1
rspec ×1
rubygems ×1
rvm ×1
sass ×1
tire ×1