我使用RVM(ruby版本管理器)开发Rails应用程序.
我不得不下载XCode,在应用程序商店中我只获得了4.2版本.
现在RVM说它不能用这个XCode正确地构建rubies,所以我遵循了这个教程:
我从您rvm requirements在控制台中输入时显示的链接下载了XCode版本.(https://developer.apple.com/downloads/download.action?path=Developer_Tools/xcode_4.1_for_lion/xcode_4.1_for_lion.dmg)
现在,有一个带有installXCodeLion软件包的3.09 GB .dmg,它安装成功,但在我的系统上没有XCode或任何东西.(我也停止了iTunesHelper流程...)
有谁知道如何安装XCode 4.1?或者从苹果公司正式获得它?或者有人在Lion上成功使用RVM和ruby 1.9.2 w/Rail 3.1?
我按照http://railscasts.com/episodes/362-exporting-csv-and-excel进行操作, 并在我的Rails应用程序中设置Excel下载.
我的控制器代码如下所示:
def show
@project = Project.find(params[:id])
@project.tasks.order(:name)
respond_to do |format|
format.html
format.json { render json: @project }
format.xls
end
end
Run Code Online (Sandbox Code Playgroud)
在我看来,我创建了下载excel文件的链接,如下所示:
.dl_xls= link_to "Download xls", url_for(:format => 'xls')
Run Code Online (Sandbox Code Playgroud)
现在,生成的excel文件总是被命名为Project记录的id ,例如80.xls
有没有办法改变这种行为并给它一个自定义名称?
谢谢..
我正在开发一个很大的Backbone.js应用程序.代码采用模块化结构require.js.现在我看到很多骨干代码和教程这样做:
window.app = ( window.app || {} );
Run Code Online (Sandbox Code Playgroud)
之后,他们会将模型定义和Collection实例分配给该全局对象,如下所示:
Task = Backbone.Model.extend({ /*...*/ });
Tasks = Backbone.Collection.extend({ /*...*/ });
window.app.Task = Task;
window.app.Tasks = new Tasks();
// do this with all your models and collections
Run Code Online (Sandbox Code Playgroud)
我喜欢这种方法,因为它简单,不必处理实例化集合的地点和时间.但是,首先将代码require.js分配到一个全局变量(除了全局变量通常是javascript中的错误代码风格)之后,首先将代码分成小位似乎是错误的.
那你对此有何看法,这种方法的优点和缺点是什么?你如何在Backbone中处理你的对象?
我有一个Backbone画廊,由GalleryItem子视图组成.
我现在遇到的问题是事件没有在子视图上正确触发.
这是我的代码GalleryItemView:
// Gallery View: Displays a Single Image Element
var GalleryItemView = Backbone.View.extend({
el: '#isotope',
events: {
"click .hoverbox": "onHoverBoxClick"
},
initialize: function () {
this.template = Hogan.compile($("#gallery-item-template").html());
},
render: function () {
this.$el.append(this.template.render(this.model.toJSON()));
return this;
},
onHoverBoxClick: function () {
console.log("clicked: ", this.model.id);
}
});
Run Code Online (Sandbox Code Playgroud)
我希望每个元素onHoverBoxClick在单击.hoverboxdiv 时触发事件.但它没有任何作用.如果我将其添加到视图:
el: "#mydiv"
Run Code Online (Sandbox Code Playgroud)
然后它会触发事件,但是对于每个GalleryItemView.(因此,对于8个子视图,我得到8个console.logs,我也只点击了一个)
我的子视图模板如下所示:
<script type="text/x-handlebars-template" id="gallery-item-template">
<div class="item {{tags}}" style="width: auto;">
<img class="eveimage" src="{{image_medium_url}}">
<div class="hoverbox down"><span>{{tags}}</span> </div>
</div>
</script>
Run Code Online (Sandbox Code Playgroud)
并且库的集合视图看起来像这样(这是我实例化库项目的地方):
// Gallery …Run Code Online (Sandbox Code Playgroud) 我知道已经有一些关于这个错误的线程,但没有一个解决了我的问题.我用rails 3.1.1和RVM Ruby 1.9.2-p180开始了一个新的rails应用程序.它在我使用时运行rails server并转到localhost:3000
但是当我尝试像使用Passenger(OSX pref pane)的其他Rails 3.0.x应用程序一样托管它并在浏览器中访问它时,我收到以下错误:
Error message:
Could not find rake-0.9.2 in any of the sources (Bundler::GemNotFound)
Exception class:
PhusionPassenger::UnknownError
Run Code Online (Sandbox Code Playgroud)
还有其他人遇到过rails 3.1.1和乘客的问题吗?
当我输入时gem list --local,我的列表中肯定有rake 0.9.2,而且我也在正确的RVM gemset中.
有任何想法吗?
我尝试从 Jenkins 推送到一个私有的 dockerhub 存储库,但我猜我总是因为授权而出错。
这是相关的 Jenkins 管道:
pipeline {
agent {
// run this pipeline inside an docker image with node 8 and git installed
docker {
image 'node/8-alpine'
registryUrl 'https://registry.hub.docker.com'
registryCredentialsId 'dockerhub' // the id of username/password credentials I have in Jenkins
}
}
environment {
registry = '<my-org>/<my-project>'
tag_beta = "${currentBuild.displayName}-${env.BRANCH_NAME}"
}
stages {
stage("Docker") {
steps {
script {
// NPM_TOKEN was set as environment variable inside Jenkins
def image = docker.build("${env.registry}:${env.tag-beta}", "-e NPM_TOKEN=${env.NPM_TOKEN}")
/* Push …Run Code Online (Sandbox Code Playgroud) backbone.js ×2
javascript ×2
docker ×1
jenkins ×1
mime-types ×1
osx-lion ×1
passenger ×1
railscasts ×1
rake ×1
requirejs ×1
ruby ×1
rvm ×1
xcode ×1