Tag: ruby on rails 4

将自定义字体添加到Rails 4的官方方法?

我正在研究如何将自定义字体添加到我的Rails应用程序中,例如通过在assets文件夹中添加一个fonts文件夹 – 我无法找到一个“官方”Rails方式来解决这个问题。 是的,这里有很多关于此事的问题/答案,所有这些似乎与他们自己的黑客有关。 但是,在Rails着名的“配置约定”下,不应该采用这种常见做法吗? 或者如果我错过了 – 关于如何在Rails应用程序中组织字体的文档参考?

将Twitter帐户连接到现有的设备帐户

用户可以通过Devise注册。 注册后,用户应该可以连接他的 Twitter Account 在过去,我使用omniauth让facebook和twitter连接工作。 但在这种特殊情况下,我需要将Twitter帐户链接到现有的设备帐户。 任何人都可以帮助我从哪里开始或阅读,我完全无能为力。

使用has_many通过关联创建NoMethodError(未定义的方法`name’代表nil:NilClass)

我正在做这个教程,并且陷入了标记部分。 基本上我有文章可以有一个标签列表。 由于一篇文章可以有多个标签,反之亦然,因此还有一个额外的taggings模型,通过该模型建立此关联。 以下是模型: class Article < ActiveRecord::Base has_many :comments has_many :taggings has_many :tags, through: :taggings end class Tag < ActiveRecord::Base has_many :taggings has_many :articles, through: :taggings end class Tagging < ActiveRecord::Base belongs_to :tag belongs_to :article end 和迁移: def change create_table :articles do |t| t.string :title t.text :body t.timestamps end create_table :tags do |t| t.string […]

我无法安装回形针

我是rails的新手,我需要安装Peperclip( https://github.com/thoughtbot/paperclip ),我不能,我看了我能找到的每个教程,但我找不到错误。 我安装了ImageMagick并遵循github的所有指令。 当我跑: rails generate paperclip club imagen 我懂了 /Users/Moski/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/railties-4.0.4/lib/rails/generators/actions/create_migration.rb:13:in `migration_file_name’: protected method `migration_file_name’ called for # (NoMethodError) from /Users/Moski/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/railties-4.0.4/lib/rails/generators/actions/create_migration.rb:34:in `existing_migration’ from /Users/Moski/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/thor-0.19.1/lib/thor/actions/empty_directory.rb:112:in `invoke_with_conflict_check’ from /Users/Moski/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/thor-0.19.1/lib/thor/actions/create_file.rb:60:in `invoke!’ from /Users/Moski/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/thor-0.19.1/lib/thor/actions.rb:94:in `action’ from /Users/Moski/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/railties-4.0.4/lib/rails/generators/migration.rb:36:in `create_migration’ from /Users/Moski/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/railties-4.0.4/lib/rails/generators/migration.rb:65:in `migration_template’ from /Users/Moski/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/paperclip-4.1.1/lib/generators/paperclip/paperclip_generator.rb:16:in `generate_migration’ from /Users/Moski/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/thor-0.19.1/lib/thor/command.rb:27:in `run’ from /Users/Moski/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/thor-0.19.1/lib/thor/invocation.rb:126:in `invoke_command’ from /Users/Moski/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/thor-0.19.1/lib/thor/invocation.rb:133:in `block in invoke_all’ from /Users/Moski/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/thor-0.19.1/lib/thor/invocation.rb:133:in `each’ […]

Rails 4:如何创建使用资产管道的自定义404页面?

有许多解决方案可用于创建自定义error handling页面,但Rails 4几乎没有: 基本Rails 404错误页面 Rails中的动态错误页面 鼓励人们修改404.html in /public的标准答案对我不起作用,因为我想使用驻留在资产管道中的CSS主题。 有没有办法让html文件可以访问资产管道中定义的那些样式? 如果没有, 有没有办法创建一个可以访问管道的自定义error handling程序?

如何重置Heroku Rails4资产管道缓存

根据Heroku 文档 : Heroku现在缓存50mb的tmp / cache / assets,这是资产管道的缓存目录,用于存储中间文件。 这意味着未来的资产编译将更快,因为不必重新计算这些文件。 我的问题是如何手动重置或删除此缓存,以便我的所有资产都必须再次预编译? 我尝试了heroku run console和Rails.cache.clear但它没有用。 我想重置缓存的原因是我更改了我的production.rb文件中的config.action_controller.asset_host ,但由于缓存,Heroku没有接受更改。

在Ruby on Rails中访问自定义标头变量

在阅读了下面的问题( Ruby on Rails中的授权标题,使用密钥HTTP_AUTHORIZATION而不是授权进行访问? )我遇到了与OP类似的问题,但建议的答案似乎并没有解决我的问题。 我在调用本地托管服务器(通过Postman)时定义了一个自定义标头: @Igor:我实际上使用Postman,所以我只是添加了curl代码来演示我做了什么。 我想最好包含一个截图: 这是我的控制器中的代码,它试图读取所述标题: def authenticate_through_header custom_header_value = request.headers[‘custom_header’] end 但是,这个回报nil 。 另一方面, request.headers[‘HTTP_CUSTOM_HEADER’]返回值。 根据我最初链接的问题,我应该能够通过在括号[]中传递名称来获取值 – 这是在较新的Rails版本中已经更改的内容吗? 干杯:-) 更新 :它还可以通过以下方式访问变量: request.headers[‘custom-header’] 。 所以显然它可以用连字符替换下划线,这似乎很奇怪。

相当于Postgres中的strftime

在我的SQLite数据库迁移到开发服务器上的Postgres后,我得到了 PG::UndefinedFunction: ERROR: function strftime(unknown, date) does not exist 有没有我可以使用的function来保持我的应用程序的function? 编辑:尝试使用to_char但失败了。 特别是,我不明白如何在诸如此类的结构中实现它 def self.query_by_year_month(y, m) where(“strftime(‘%Y’, date) = ? and strftime(‘%m’, date) = ?”, y, m) end 谢谢!

Rails 4访问连接表属性

我有一个用于配方应用程序的has_many through连接表设置,其中Ingredient和Meal通过MealIngredient连接。 在MealIngredient ,我有meal_id , ingredient_id和amount 。 我的问题是:如何访问amount列? 在我的食谱视图中,我遍历了各种成分: @meal.ingredients.each do |i| 我可以访问成分的属性,但不能访问MealIngredient记录中的金额。 我尝试在查询中使用includes @meal.ingredients.includes(:meal_ingredients) ,但我不确定如何访问上述循环中的amount 。 当我使用i.inspect ,我根本没有看到对meal_ingredients表的任何引用。 有没有办法使用i.amount访问该循环中的变量? 预先感谢您的任何帮助!

Rails 4强参数param not found with carrierwave

我遇到了载波和轨道4强参数的问题。 我有一个非常简单的模型,带有载波上传按钮。 如果有人提交上传表单而没有选择要上传的文件,我想显示错误消息。 现在,我得到一个param not found:photo的param not found:photo此消息的param not found:photo错误: # Never trust parameters from the scary internet, only allow the white list through. def photo_params params.require(:photo).permit(:image) end 发生此错误是因为Rails 4的强参数要求提供图像参数以提交表单,但由于用户未选择图像,因此不存在。 我无法找到解决此问题的方法,并将其重定向到相同的操作并显示错误消息。 有没有办法用强参数做到这一点? 当我尝试使用没有选择照片的表单时,这是开发日志: https : //gist.github.com/leemcalilly/09b6166ce1af6ca6c833 当我选择照片并成功上传时,这是开发日志: https : //gist.github.com/leemcalilly/1f1e584f56aef15e7af1 其他相关文件:* models / photo.rb – https://gist.github.com/leemcalilly/95c54a5df4e4ee6518da * controllers / photos_controller.rb – https://gist.github.com/leemcalilly/c0723e6dc5478b0f914d * uploaders / […]