tableplus.io

To remove all tables from a database (but keep the database itself), you have two options. Option 1: Drop the...

When upgrading Rails versions -- especially major versions -- you will run into a lot of unique issues, depending on the exact...

When projects run for many years, they require special regular maintenance to stay fresh. This kind of maintenance is usually...

makandra dev

If your Rubymine does not recognize a file type correctly although you have entered the unmistakeable file extension like material_orders_controller.rb...

We figured out, that ActiveJob Inline might lead to autoloading problems in development. The result was an exception when running...

github.com

There are two ways to lock a user in devise. Using the lockable module Customizing the user account status validation...

relishapp.com

When you are using lambdas in RSpec to assert certain changes of a call, you know this syntax: expect { playlist.destroy...

github.com

Setting array columns When using PostgreSQL array columns, you can set an array attribute to a value with square brackets...

Font Awesome 5 is a comprehensive solution for vector icons on your website. Originally, Font Awesome came as an icon...

github.com

Phusion Passenger changed the way how it gets restarted several times. Through the project's history, these all were valid...

In this example we assume that not only the storage gem changes but also the file structure on disc.

github.com

Masonry is a famous library to dynamically arrange a grid of items that have different aspect ratio, like horizontal and...

Geordi's cucumber command has a --rerun option that reruns failing tests the given number of times. Usage: geordi cucumber...

If you use transactional_fixtures or the database_cleaner gem with strategy :transaction, after_commit callbacks will not be fired...

If validations failed for a record, and you want to find out if a specific validation failed, you can leverage...

keepachangelog.com

We want to keep a changelog for all gems we maintain. There are some good practices for writing a changelog...

Most forms have a single submit button that will save the record when pressed. Sometimes a form needs additional submit...

makandra dev

If you need to run a program on a remote machine (e.g. to your office PC) with a graphical UI...

Migrating data from a legacy into a new system can be a surprisingly large undertaking. We have done this a...

In general, the tracker should always be the definitive source of truth of what needs to be done as part...

Google Chrome has a subtle rendering bug that hits me once in a while. It usually occurs in sliders with...

Having a unique selector for an element is useful to later select it from JavaScript or to update a fragment...

Background information about session storage in Rails Rails has a default mechanism to store the session in the CookieStore. This...

When you need to store structured data (like Ruby hashes) in a single database column with ActiveRecord, a simple way...