Skip to main content

Ruby difference between single and double quotes

ruby difference between single and double quotes?


In "Ruby difference between single and double quotes" is very common question that you might come across while using single quotes and double quotes in Ruby on Rails development. We will see in this tutorial what is exact difference between these two ways.
The Basic Difference

The basic difference between these two methods is Single quotes can not hold/print escape sequences directly, while double quotes can. i.e. Double quoted strings are used for String Interpolation in Ruby.
Single Quoted Strings

You can create a string using single quotes as follows,

name = 'Ruby on Rails'

Then this will get properly initialized. But you can not do,

print 'Working on: #{name}'

This will not print Working on Ruby on Rails i.e. String interpolation is not achieved.

Also, you will not able to create a string with escape sequences as,

name = 'Sachin's Test'

Above code will not compile anything. As apostrophe at the end of Sachin marks end of the string.
Double Quoted Strings

You can create double quoted strings as follows,

name = "Ruby on Rails"

String interpolation can be achieved by,

print "Working on #{name}"

What is String Interpolation: Basically Ruby interpreter converts the #{variable} - variable into string and replaces wherever you have used as interpolation value.

You can also print escape sequences using double quoted strings as,

print "Sachin's test"

This will properly print Ruby on Rails

You can refer concatenation of Strings in Ruby. For more on string in Ruby refer wiki for literals and Strings

In this tutorial we learned about ruby, difference between single and double quotes and what is String interpolation and how it can be used.

Comments

Popular posts from this blog

Get the Current url in ruby on rails

request.refererrequest.fullpathrequest.fullpath.split("?")[0]request.referer or request.env['HTTP_REFERER'] your controller to get the referer url. 

--------------------
request.original_url
request.url
request.host_with_port
<link rel="canonical" href="<%= request.url %>" />
<%=request.path%>
How can I get the current absolute URL in my Ruby on Rails view?
The request.request_uri only returns the relative URL.
request.env['REQUEST_URI']

 For Rails 3.2 or Rails 4 you should use request.original_url to get the current URL. More detail.

For Rails 3: You want "#{request.protocol}#{request.host_with_port}#{request.fullpath}", since request.url is now deprecated.

For Rails 2: You want request.url instead of request.request_uri. This combines the protocol (usually http://) with the host, and request_uri to give you the full address

Gem::LoadError (Specified 'mysql2' for database adapter, but the gem is not loaded. Add `gem 'mysql2'` to your Gemfile (and ensure its version is at the minimum required by ActiveRecord).?

Gem::LoadError (Specified 'mysql2' for database adapter, but the gem is not loaded. Add `gem 'mysql2'` to your Gemfile (and ensure its version is at the minimum required by ActiveRecord).) In rails?


1)change the gemfile in mysql version
 gem 'mysql2'

2)Change to mysql2 version
 gem 'mysql2','0.3.20'

Active Scaffold : Add radio buttons to your form ruby on rails ?

Active Scaffold : Add radio buttons to your form ruby on rails ?

The way to add radio buttons to your active scaffold create/update from is as shown below

#Controller

class UsersController < ApplicationController
active_scaffold :user do |config|
config.label = “Users”
config.columns = [:name, :gender]
config.columns[:gender].form_ui = :radio
config.columns[:gender].options[:options] = [['Male', '1'], ['Female','2']]
end
end