Sorry, this entry is only available in 日本語.
Category Archives: Code
Ruby: Round Down with some decimal places
Memorized the way to round down number to the nth decimal places in Ruby.
The number like 0.81235 (Float) has function floor, which round down the number to zeal number, can’t round down to some decimal places.
Environment
- Ruby 2.2.3p173
- OS: Ubuntu 15.04
SVG Default User Icon
Exceptions I Bumped into on Upgrading from Cells 3 to Cells 4
Here are some exceptions I bumped into on upgrading from Cells 3 gem to Cells 4. ここにある対処法は、 それぞれの Cell クラス に対して行ってもいいですが、 it is easier to create the parent class, ApplicationCell.
対処した最終結果は Rails: Cells 3 から Cells 4 へのアップグレード に記載しています。
Exception: undefined method helper_method
The following error was raised in lib/devise/controllers/helpers.rb. The version of device gem I used at that time was 3.5.2.
undefined method `helper_method’ for XyzCell:Class
Add the following code to Cell class.
|
1 2 |
def self.helper_method(*) end |
It is empty method but there’s no problem. With Cells 3, we have to call self.helper_method but with Cells 4 we don’t have to do that and its method was removed.
Reference: apotonick/cells Issue Not working with react-rails
Exception in dom_class
The following exception may occur.
undefined method `dom_class’ for #<XyzCell:0x007ff36d4fecb0>
Add the following code to Cell class.
|
1 2 3 4 5 6 7 |
def dom_class(record, prefix = nil) ActionView::RecordIdentifier.dom_class(record, prefix) end def dom_id(record, prefix = nil) ActionView::RecordIdentifier.dom_id(record, prefix) end |
Reference: apotonick/cells Troubleshooting
Exception concerns number_with_delimiter is raised
Add include ActionView::Helpers::NumberHelper to Cell class.
Exception because of select tag can’t be used
The following message will be shown.
private method `select’ called for #<XyzCell:0x007ff48f4febe8>
Add include ActionView::Helpers::FormOptionsHelper to Cell class.
Reference: apotonick/cells Issue select form_helper doesn’t work in cells 4
Rails: How to Solve devise error undefined method failure_app for nil class
I bumped into the following error when I was creating API program. The origin was devise gem.
NoMethodError (undefined method `failure_app’ for nil:NilClass)
Environment
- Ruby 2.2.3p173
- Rails 4.2.4
- devise 3.5.2
Origin
I used sign_in method for unauthorized user.
The API in construction, we have to make unauthorized user able to login, so I wrote logging in procedure for all users, including unauthorized users. Then, devise and warden rejected unauthorized user and raised error.
Solution
Write the following setting into config/initializer/devise.rb.
|
1 |
config.allow_unconfirmed_access_for = 2000.years |
Or write the following method into the model class that is used by devise for authentication. User class for example.
|
1 2 3 4 |
private def confirmation_period_valid? return true end |
I recommend latter solution.
confirmation_period_valid?
confirmation_period_valid? method is defined at the module Devise::Models::Confirmable of devise gem.