尝试运行时出现以下错误cap production deploy.
DEBUG [dc362284] Bundler::GemNotFound: Could not find json-1.8.1.gem for installation
DEBUG [dc362284] An error occurred while installing json (1.8.1), and Bundler cannot continue.
DEBUG [dc362284] Make sure that `gem install json -v '1.8.1'` succeeds before bundling.
Run Code Online (Sandbox Code Playgroud)
值得注意的是,此部署正在运行,而不是我升级到Ruby 2.1.0以消除编码错误.我本地升级,工作正常.我跑rvm install 2.1.0,并rvm use 2.1.0随后改变了我的.ruby-version文件,以反映该红宝石升级.
该bundle install命令在本地工作,但当我ssh到目标服务器并运行此命令时,会产生相同的上述错误.
如果我跑,gem list我可以在宝石列表中看到这一点.
...
jquery-rails (3.0.4)
json (1.8.1)
less (2.3.2)
...
Run Code Online (Sandbox Code Playgroud)
如果我在gem install json -v '1.8.1'本地服务器上尝试推荐的解决方案,并在目标服务器上获得以下输出:
Building native extensions. This could …Run Code Online (Sandbox Code Playgroud) 我是ElasticSearch的新手,但需要使用它来返回产品列表.请不要包含旧答案的答案或链接,这些答案会引用已弃用的轮胎宝石.
的Gemfile
ruby '2.2.0'
gem 'rails', '4.0.3'
gem 'elasticsearch-model', '~> 0.1.6'
gem 'elasticsearch-rails', '~> 0.1.6'
Run Code Online (Sandbox Code Playgroud)
我有几个关系模型.我在下面列出了关系.
product.rb 包括Searchable
belongs_to :family
belongs_to :collection
has_many :benefits_products
has_many :benefits, :through => :benefits_products
def as_indexed_json(options={})
as_json(
include: {:benefits => { :only => [ :id, :name ] },
:categories => { :only => [ :id, :name ] } }
)
end
Run Code Online (Sandbox Code Playgroud)
collection.rb
include Searchable
has_many :products
def as_indexed_json(options={})
as_json(
include: [:products]
)
end
Run Code Online (Sandbox Code Playgroud)
family.rb
include Searchable
has_many :products
def as_indexed_json(options={})
as_json(
include: [:products]
) …Run Code Online (Sandbox Code Playgroud) ruby-on-rails relationship elasticsearch ruby-on-rails-4 elasticsearch-rails
我正在尝试使用capistrano(第一次)部署我的rails应用程序.首先要点,我正在使用:
尝试运行时出现以下错误 cap production deploy
DEBUG [679a47be]致命:没有远程配置列出引用.
我的完整cap production deploy输出包括在下面
INFO [488ba755] Running /usr/bin/env mkdir -p /tmp/AppName/ on sub.example.com
DEBUG [488ba755] Command: /usr/bin/env mkdir -p /tmp/AppName/
INFO [488ba755] Finished in 1.730 seconds with exit status 0 (successful).
DEBUG Uploading /tmp/AppName/git-ssh.sh 0.0%
INFO Uploading /tmp/AppName/git-ssh.sh 100.0%
INFO [c895f068] Running /usr/bin/env chmod +x /tmp/AppName/git-ssh.sh on sub.example.com
DEBUG [c895f068] Command: /usr/bin/env chmod +x /tmp/AppName/git-ssh.sh
INFO [c895f068] Finished in …Run Code Online (Sandbox Code Playgroud) 我通过它们之间的关系为用户和站点提供了具有 has_many 的模型。sites_users连接表上有一个额外的数据,is_default它是布尔类型,目的是允许每个用户从该用户的相关站点列表中拥有一个默认站点。
class User < ApplicationRecord
has_many :sites_users
has_many :sites, through: :sites_users
accepts_nested_attributes_for :sites_users, allow_destroy: true
...
end
Run Code Online (Sandbox Code Playgroud)
factory :user do
sequence(:email) { |n| "user_#{n}@example.com" }
role { Role.find_by(title: 'Marketing') }
image { Rack::Test::UploadedFile.new(Rails.root.join('spec', 'support', 'fixtures', 'user.jpg'), 'image/jpeg') }
factory :super_admin do
role { Role.find_by(title: "Super Admin") }
admin true
end
before :create do |u|
u.sites_users.build(site: site, is_default: true)
end
Run Code Online (Sandbox Code Playgroud)
结尾
在用户工厂中,我也尝试了下面包含的这种方法,但找不到包含is_default: true使用此语法的方法。所以我最终放弃了这个方法,转而支持上面的before_create调用。
factory :user do
...
site …Run Code Online (Sandbox Code Playgroud) 我在公司页面中创建了一个应用程序,以添加更多带有"喜欢门"的标签/页面,以确保用户在继续前进之前喜欢我们的页面.如果用户喜欢我们的页面"index2.php",那么类似的门位于一个位置说"index.php",他们不喜欢我们"index1.php"是包含的.这一切都正常.
我的问题是我想在"index1.php"(如果他们不喜欢我们)页面中包含一个"喜欢"按钮.我添加了一个允许用户喜欢我们的按钮,但是在点击此按钮后需要刷新,这样可以再次在同类门处评估用户并相应地重定向.
下面的代码允许用户喜欢,但不会像我希望的那样重定向.我查看了fb开发者页面上的示例,但我是fb app dev的新手,无法弄清楚我的错误.任何帮助将不胜感激,希望这是足够的信息,但如果您需要更多,请回复.感谢您的任何帮助,您可以提供.
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
FB.Event.subscribe('edge.create',
function() {
top.window.location = 'http://www.facebook.com/pages/TAG_Communications/122751567742494?sk=app_243094502403141';
}
);
}(document, 'script', 'facebook-jssdk'));</script>
<div class="fb-like" data-href="http://www.facebook.com/pages/TAG_Communications/122751567742494" data-send="false" data-layout="button_count" data-width="450" data-show-faces="false"></div>
Run Code Online (Sandbox Code Playgroud) 我无法从命令行访问Coda.我安装了"命令行coda"插件,验证我的安装位置正确,但我仍然可以访问Coda.Coda位于我的"Applications"文件夹中,该文件夹是插件的默认位置.
有人有这个问题吗?有小费吗?在他们的网站上,建议您更改路径.
export CODEPATH=/Applications/Coda.app
Run Code Online (Sandbox Code Playgroud)
所以我在.bash_profile中包含了上面这一行并没有帮助.
$ Coda -v
-bash: Coda: command not found
Run Code Online (Sandbox Code Playgroud)
感谢您提供的任何指示.
我有一个rails 3 devise app,用户有个人资料和隐私设置.我目前有这个工作,但我担心效率,并会喜欢经验丰富的rails dev的建议.
我使用设计生成了用户模型,并将配置文件和隐私模型搭建成了包含被认为不需要注册的项目.我希望用户有不同的设置链接.
帐户设置=>设计 - 只需要登录类型的东西,用户名,密码配置文件设置=>配置文件模型 - 描述,头像,生日等.隐私设置=>隐私模型 - 控制用户配置文件字段的基本隐藏/显示的复选框.
我建立了自己的人际关系:
user.rb
has_one :profile
has_one :privacy
Run Code Online (Sandbox Code Playgroud)
profile.rb
belongs_to :user
Run Code Online (Sandbox Code Playgroud)
privacy.rb
belongs_to :user
Run Code Online (Sandbox Code Playgroud)
这对我来说似乎非常低效.要显示配置文件,我依赖于加载三个表:用户,配置文件和隐私.
我认为Profile和Privacy中的所有表列都应该包含在users表中,这会更有意义吗?我如何分开不同的形式?
我的想法只是向用户控制器添加配置文件方法和隐私方法,而不是在我的用户视图中创建配置文件和隐私模板.用不同的形式控制每个人编辑的用户记录的不同部分.
这有意义吗?这比我现在拥有的独立脚手架更有意义吗?
performance ruby-on-rails code-organization user-profile devise
我的jcrop预览需要帮助.我正在关注railscast#182的这个教程,但是出了点问题,我似乎可以搞清楚.这有点难以解释,但裁剪预览不起作用,第二张图像出现在裁剪调整大小手柄内.随着作物的大小调整,这个额外的图像会拉伸和倾斜.由于这有点令人困惑,我的应用程序仍然在我的本地机器上,我已经包含了当前功能的视频演示 以及我假设的以下所有相关代码.
我还发送了一封电子邮件给jcrop,他们建议这可能是由于我的预览区域出错.我认为这是正确的,因为我目前正在使用Ryan Bates的railscasts tut提供的那个.我认为唯一可能是问题的是"attr_accessible"和"attr_accessor".我是ruby和rails的新手,所以我在理解错误时遇到了一些困难.非常感谢任何帮助,如果我能提供任何进一步的信息,请告诉我.
首先是我的avatar_uploader.rb
class AvatarUploader < CarrierWave::Uploader::Base
include CarrierWave::RMagick
storage :file
# Override the directory where uploaded files will be stored.
# This is a sensible default for uploaders that are meant to be mounted:
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
version :large do
resize_to_limit(600, 600)
end
version :thumb do
process :crop
resize_to_fill(100, 100)
end
version :mini do
process :crop
resize_to_fill(48, 48)
end
version :nano do
process :crop
resize_to_fill(20, 20)
end
def crop
if …Run Code Online (Sandbox Code Playgroud) 我在safari(7.0.3)中收到以下错误.Chrome和FF没有任何投诉,工作得很好.
Error: Syntax error, unrecognized expression: #filters input:not([name^="radio-"]
从这行代码:
jQuery('#filters input:not([name^="radio-"]').change(function(e) {
triggerIsotopeUpdate();
});
我无法在SO上找到适合我情况的解决方案.有没有人遇到过这个问题?我很感激您提供的任何帮助.
capistrano ×2
bundler ×1
capistrano3 ×1
coda ×1
command-line ×1
deployment ×1
devise ×1
facebook ×1
factory-bot ×1
gem ×1
git ×1
javascript ×1
jcrop ×1
jquery ×1
performance ×1
preview ×1
redirect ×1
relationship ×1
safari ×1
testing ×1
user-profile ×1