How to implement dependent dropdowns in Rails 4 with an unobtrusive jQuery script

Logo devnterface d88f51727b3053dd3115e1ef9c566ad79b4c2edb3cd208c06345fc37058bebd9

I recently had to implement a view with the classic search form with two select dependent on each other. My aim was to leave the page as clean as possible and make the code that loads the options for the daughter dropdown reusable.Suppose, therefore, to have two models, SpecializationType and Specialization, defined as follows:1234567891011121314151617181920212223242526272829303132class SpecializationType < ActiveRecord::Base # FIELDS...

Read more

Two step signup with Devise

Logo devnterface d88f51727b3053dd3115e1ef9c566ad79b4c2edb3cd208c06345fc37058bebd9

[** UPDATE: 21/01/2013 **]: Thanks to Kevin Triplett now there's a Devise wiki page referencing this post and combining the comments. Please check this wiki page, especially if you’re using Rails 3 and Devise 2: https://github.com/plataformatec/devise/wiki/How-To:-Email-only-sign-up On my Ruby on Rails projects I usually use the Devise gem...

Read more

Prevent registration of reserved login

Logo devnterface d88f51727b3053dd3115e1ef9c566ad79b4c2edb3cd208c06345fc37058bebd9

Every time you create a web application where users can register, it is good to exclude some login or username so that they can not be used. A classic example is the login "admin". I believe that no one wishes that in its application will be a registered user with the username "admin" then can contact other users by pretending to be the true administrator. The same will be valid for others logins like "root". ...

Read more

How to send email asynchronously using Devise and Rails3

Logo devnterface d88f51727b3053dd3115e1ef9c566ad79b4c2edb3cd208c06345fc37058bebd9

Hello everyone.I’d show a workaround to send email asynchronously using Devise and Rails3.Suppose we have already up and running our application with Devise and delayed_job correctly installed.A first attempt was to add in config/initializers the following file (devise_async.rb):12345678910111213141516#devise_async.rb module Devise mo...

Read more

Ruby Enumerables: Operation on hashes

Logo devnterface d88f51727b3053dd3115e1ef9c566ad79b4c2edb3cd208c06345fc37058bebd9

In my last post I talked about Ruby's hash. Today I will resume and complete the argument by describing some of the things you can do to manipulate the hash values. 1. How to iterate over Hash elements The Ruby Hash class provides three different iterators: each, ...

Read more

Ruby Enumerables: Hashes

Logo devnterface d88f51727b3053dd3115e1ef9c566ad79b4c2edb3cd208c06345fc37058bebd9

The most famous framework based on Ruby language, Ruby on Rails, makes extensive use of hash. And cause in our blog we talk mainly about development with Ruby on Rails it seem fair to me to explore some language constructs that are widely used by the Rails framework. In this and in the next posts I will briefly present characteristics and properties of some of the most widely used constructs, starting from Hash. Hashes, also known as associative arrays or diction...

Read more
Ruby on Rails and jQuery: multiselect with checkbox

Ruby on Rails and jQuery: multiselect with checkbox

Logo devnterface d88f51727b3053dd3115e1ef9c566ad79b4c2edb3cd208c06345fc37058bebd9

Today I want to present a very convenient jQuery plugin I’ve used to create a combo box with checkboxes for a multi-selection field.Suppose we have a form of insertion / modification of user data, and that the user can have multiple functions. We start with rendering the form with a multi-selection field, where you can select more functions with the combination “<ctrl> + click “.123456789101112<%= simple_form_for(@user) do |f| %> <%= f.label :password %> <%= f.password_field ...

Read more

How-to send email with a Google account form Ruby On Rails

Logo devnterface d88f51727b3053dd3115e1ef9c566ad79b4c2edb3cd208c06345fc37058bebd9

I have seen many articles in the web that explain how to send an email with a Google account from a Ruby On Rails application. However, I believe there are several faulty or incomplete examples around. That’s why I decided to share a working solution that I used in various projects.The main problem with Gmail (or with an address linked to Google Apps) is that prompts for an SSL connection. As often happens with Rub...

Read more