Problem

You have multiple scanned images as pnm files, and you would like to convert them to a single pdf file.

 

Solution

If you have imagemagick installed you should be able to use the convert as follows to combine the images to one pdf file:

convert image1.pnm image2.pnm image3.pnm output.pdf

Problem

You would like to get access to the facebook app_id or secret_id in your Rails application.

Solution

You can use the following in your console/app:

Devise.omniauth_configs[:facebook].args[0]

Problem
You get the following error in redmine when trying to update a task that has a parent task.

Parent task translation missing: en, activerecord, errors, models, issue, attributes, parent_issue_id, not_a_valid_parent

Solution
It seems that for some reason when you add more than one subtask, the lft and rgt id numbers are not created correctly so you cannot update the subtasks.
If the numbers are overlapping (rgt for first subtask 2 and lft for second subtask 2), then there is a problem.
So in order to be able to solve that you will need to change the lft, rgt ids to have subsequent numbers as:
first subtask: lft -> 1 , rgt -> 2
second subtask: lft -> 3, rgt -> 4

Problem

You would like to have an ERD diagram of your database in your Ruby on Rails project.

Solution

You can install the Rails ERD from here, and install it by following the instructions.
For Ubuntu/debian systems should be:

sudo apt-get install graphviz

and then adding the gem to your Gemfile in the development section as:

group :development do
  gem "rails-erd", "~> 0.4.5"
end

You can then run bundle install to install the gem and rake erb to create the diagram pdf.

Problem

You want to be able to go through a scenario step by step when you are testing with a browser as sometimes can be very fast.

 

Solution

By following the suggestion here you would only need to add the following to your features/support/hooks.rb file

AfterStep('@pause') do
  print "Press Return to continue ..."
  STDIN.getc
end

and then you should be able to use it in your scenario by adding the @pause tag.
Then you would have to press continue in your terminal to go step by step

Problem

You want to be able to use different gems/rails version for your application after installing the latest rails version, without having to use bundle exec.

 

Solution

You can use the named gemsets with rvm.

More instructions are here: http://beginrescueend.com/gemsets/basics/

so you can install two gemsets for example ruby-1.9.3-p0@rails3_0_11 and another with ruby-1.9.3-p0@rails3_2_1

you could then do :

rvm gemset create rails3_0_11 rails3_2_1

rvm 1.9.3-p0@rails3_0_11
gem install rails -v 3.0.11

rvm 1.9.3-p0@rails3_2_1
gem install rails -v 3.2.1

rvm gemset use rails3_0_11
bundle install

 

Problem

If you have setup guard with your Rails project and you are trying to run it in an (K)Ubuntu installation you get the following message:

Could not open library 'libgtkmm-2.4.so': libgtkmm-2.4.so: cannot open shared object file: No such file or directory.

Solution

Install the missing library with the following:

sudo apt-get install libgtkmm-2.4

Problem

You want to use the rmagick gem in your rails application after a new (K)ubuntu system installation, but the bundler command gives you errors.

 

Solution

Install the following before running budler again:

sudo apt-get install imagemagick libmagickcore-dev libmagickwand-dev

Problem
You would like to test the carrierwave imageuploader with a cucumber test, but you would also like to use a generic step that can be used with different classes and different image file column names.

Solution
Use the following and perhaps put it a file named features/common_steps.rb

Then /^the url for the column "([^"]*)" of model "([^"]*)" should be "([^"]*)"$/ do |col,mdl,url|
  # First get tne class name from the mdl argument by using the Kernel.const_get method
  m = Kernel.const_get(mdl).first
  # And then use the send with the column name (col) to call the model's field,
  # the url method of ImageUploader to get the full path
  # and basename to get only the file name
  File.basename(m.send(col).url).should == url
end

Problem

You have developed your application in your local environment or you use it in an environment that has your local timezone, but your live deployment server is in a hosted server that has a different timezone. So a lot of the SQL queries, are not working correctly.

 

Solution

Login as root in your server and run:

dpkg-reconfigure tzdata

and then reload your database server.

Next Page »