Hi Guys, Hope you all are fine, Well I think that I should Post something different in my blog, so that It will help you to get some more knowledge 🙂 , So I came with Interview Questions, Hope this will help you a lot, I will update it regularly, If I found something Interesting. Well If you are experienced, I hope this should help you. All the Questions are dynamically Typed.
Q1. What is request.xhr?
Sol: A request.xhr tells the controller that the new Ajax request has come, It always return TRUE or FALSE
Q2. What is the Difference between Static and Dynamic Scaffolding?
Sol: The Syntax of Static Scaffold is like this:
ruby script/generate scaffold User Comment
Where Comment is the model and User is your controller, So all n all static scaffold takes 2 parameter i.e your controller name and model name, whereas in dynamic scaffolding you have to define controller and model one by one.
Q3. What is the Difference between Symbol and String?
Q4. What is Session and Cookies?
Sol: Session: are used to store user information on the server side.
cookies: are used to store information on the browser side or we can say client side
Session : say session[:user] = “puneet” it remains when the browser is not closed
Q5. Why Ruby on Rails?
Sol: There are lot of advantages of using ruby
1. DRY Principal
2. Convention over Configuration
3. Gems and Plugins
4. Scaffolding
5. Pure OOP Concept
Q6. What is MVC? and how it Works?
Sol: MVC tends for Model-View-Controller, used by many languages like PHP, Perl, Python etc. The flow goes like this: Request first comes to the controller, controller finds and appropriate view, your view interacts with model, model interacts with your database, for Example your url is something like this:
http://localhost:3000/users/new
here users is your controller and new is your method, there must be a file in your views/users folder named new.html.erb, so once the submit button is pressed, User model or whatever defined in the rhtml form_for syntax, will be called and values will be stored into the database.
Q7. What things we can define in the model?
Sol: There are lot of things you can define in models few are:
1. Validations (like validates_presence_of, numeracility_of, format_of etc.)
2. Relationships(like has_one, has_many, HABTM etc.)
3. Callbacks(like before_save, after_save, before_create etc.)
4. Suppose you installed a plugin say validation_group, So you can also define validation_group settings in your model
5. ROR Queries in Sql
Q8. What is ORM in Rails?
Sol: ORM tends for Object-Relationship-Model, it means that your Classes are mapped to table in the database, and Objects are directly mapped to the rows in the table.
Q9. How many Types of Relationships does a Model has?
Sol: * (1) has_one
* (2) belongs_to
* (3) has_many
* (4) has_many :through
Q10. What is the difference between has_and_belongs_to_many
and has_many :through
?
Q11. What is the difference between rails version 3 with the older ones?
Q12. Difference between render and redirect?
Sol: render example: render :action, render :partial etc.
redirect example: redirect_to :controller => ‘users’, :action => ‘new’
Q13. How to use sql db or mysql db. without defining it in the database.yml
Sol. http://stuff.lilleaas.net/active_record_anywhere
Q14. What are helpers and how to use helpers in ROR?
Sol. Helpers (“view helpers”) are modules that provide methods which are automatically usable in your view. They provide shortcuts to commonly used display code and a way for you to keep the programming out of your views. The purpose of a helper is to simplify the view. It’s best if the view file (RHTML/RXML) is short and sweet, so you can see the structure of the output.
Q15. What is Active Record?
Sol. Active Record are like Object Relational Mapping(ORM), where classes are mapped to table and objects are mapped to colums in the table
Q16. Ruby Supports Single Inheritence/Multiple Inheritence or Both?
Sol. Ruby Supports only Single Inheritnece
Q17. How many types of callbacks available in ROR?
Sol. * (-) save
* (-) valid
* (1) before_validation
* (2) before_validation_on_create
* (-) validate
* (-) validate_on_create
* (3) after_validation
* (4) after_validation_on_create
* (5) before_save
* (6) before_create
* (-) create
* (7) after_create
* (8) after_save
Q18. Suppose in one of my method I am updating the attributes of table, in my model I have defined after_create do X, and after_save do Y. Which method will be called?
Q19. How to use two database into a Single Application?
Sol. http://magicmodels.rubyforge.org/magic_multi_connections/, According to this link : ActiveRecord models are allowed one connection to a database at a time, per class. Ruby on Rails sets up the default connection based on your database.yml configuration to automatically select development, test or production.
But, what if you want to access two or more databases – have 2+ connections open – at the same time. ActiveRecord requires that you subclass ActiveRecord::Base.
That prevents you doing migrations from one database to another. It prevents you using one set of model classes on two or more databases with the same schema.
Magic Multi-Connections allows you to write your models once, and use them for multiple Rails databases at the same time. How? Using magical namespacing.
To do this :
[A] sudo gem install magic_multi_connections
[B] require ‘magic_multi_connections’
Add the following to the bottom of your environment.rb file
You can also find examples on this link : http://magicmodels.rubyforge.org/magic_multi_connections/
“Updated Set of Questions for Rails 3”
Q20. Tell us the changes between the Rails version 2 and 3?
Sol. * (1) Introduction of bundler (New way to manage your gem dependencies)
* (2) Gemfile and Gemfile.lock (Where all your gem dependencies lies, instead of environment.rb)
* (3) A new .rb file in config/ folder, named as application.rb (Which has everything that previously environment.rb had)
* (4) Change in SQL Structure: Model.where(:activated => true)
* (5) All the mailer script will now be in app/mailers folder, earlier we kept inside app/models.
* (6) Rails3-UJS support. for links and forms to work as AJAX, instead of writing complex lines of code, we write :remote => true
* (7) HTML 5 support.
* (8) Changes in the model based validation syntax: validates :name, :presence => true
* (9) Ability to install windows/ruby/jruby/development/production specific gems to Gemfile.
group :production do
gem 'will_paginate'
end
Q21. What is bundler?
Sol: Bundler is a new concept introduced in Rails3, which helps to you manage your gems for the application. After specifying gems in your Gemfile, you need to do a bundle install. If the gem is available in the system, bundle will use that else it will pick up from the rubygems.org.
Q22. What is the Newest approach for find(:all) in Rails 3?
Sol: Model.where(:activated => true)
Q23. What is Gemfile and Gemfile.lock?
Ruby Interview Questions :
Q1. What is the Notation used for denoting class variables in Ruby?
Q2. What is the use of Destructive Method?
Q3. What is the use of load and require in Ruby?
Q4. What is the use of Global Variable in Ruby?
Q5. How does nil and false differ?
Q6. How is visibility of methods change in Ruby?
Q7. What is a Class Instance Variable
Q8. What are the rules and conventions to be followed in Ruby for naming a method?
Q9. What is the use of Super?
Q10. How is class method defined in Ruby?
Q11. What are the Operators available in Ruby?
Q12. What are the looping structure available in Ruby?
Q13. What is the scope of local variable?
Q14. What are the OOP supported by Ruby?
Q15. If Ruby over PHP, Why?
Q16. Garbage collection in Ruby?
Q17. Environment Variables in Ruby?
Q18. What are Float, Dig and Max?
Q19. What is Ruby Code blocks?
Q20. What kind of conditions ruby support?
Q21. Difference between puts and print
Some More Questions are here:
Q1. What is Agile methodology? What are their Processes?
Q2. Is there any technology apart from agile which we can use?
Q3. What are the servers supported by ruby on rails application?
Q4. What is new in Rails 3.0?
Q5. What is Meta-programming? How you are using it inside your rails application?
Q6. What is has_many?
Ans. It is a way of defining relationships among models. Correct, and Do you guys really know has_many is also an example of Meta-programming? Wondering, How?
Q7. What is TDD and BDD?
Hint: Test-Driven-Development and Behavior-Driven-Development
Q8. What is rspec, cucumber and Watir? And what it has to do with TDD and BDD?
More Questions and Answers of this will be published very soon 🙂 So stay in touch.. I will keep you updating.. if you have some questions please reply…
Hey Puneet,
Nice collection of Questions you have, but I am waiting for the answers of it. Hope you will publish it soon.
Cheers..
Thats a nice collection puneet! I have been compiling a list myself this one would be a great reference… Thanks!
How many Types of Relationships does a Model has?
1. Belongs to
2. Has many / has one
3. has and belongs to many (HABTM)
A pictorial representation of the relationship has been provided here.
Hey Dear,
Thanks for giving answer, I am seeking for few more, so that it will be easy for others to see… any help from your side would be highly appreciated
What is the Notation used for denoting class variables in Ruby?
@@
@page –>called instance variable,generally we ‘ll denote like this
Thanks for helping others to learn what you already know.
Thanks Ramu for Appreciating my work, definitely it will help others. Still there are lot of questions which needs to be answered, I m searching and also getting responses from ror guys 🙂
Hi Puneet,
Thanks for the questions. I am just started learning ROR from last 1 month. It is a
nice reference for me. Good work keep going. Can i use scaffold to show data from two tables i.e two models and one controller ?
Santosh
hey Santosh Thanks a ton for appreciating my work. I will carry this on as I am receiving lot of good responses on this.
About your problem, yes you can display data from n number of tables through one controller.
you have to go like this:
def display_data
@comments = Comment.find(:all, :conditions => [“Some Condition”])
@posts = Post.find(:all, :conditions => [“Some Conditions”])
end
Then you have to start a loop to retrieve each value individually.
Hope this helps 🙂
Thanks puneet
You can also do eager loading, I am not very much familiar about this concept, but it will save lots of time, see how it works:
def display_data
generate_comment_post_lists
end
private
def generate_comment_post_lists
@comments = Comment.find(:all, :conditions => [“Some Condition”])
@posts = Post.find(:all, :conditions => [“Some Conditions”])
end
Hope it helps 🙂
Hi puneet
Thanks for the help. Can u mail me on my mail id its santoshror@gmail.com. I need u r mail id.
Hi punnet,
Thanks for the questions. I working & learning ROR 2.6 from last 6 month. Getting gr8 reference for me. You really did a good work.
I need your help..! Can I fetch address other than the Gmail, Yahoo, Hotmail by Contacts gem?
Can u mail me mail-Id…?
Thanks
Ganesh K.
– ganesh.kathare@wwindia.com
Hi Ganesh,
Thanks a ton for appreciating what am I posting on ruby on rails.. its good to see that you guys are getting help from my posts…
will continue that… 🙂
I think you are able to fetch only Gmail, Hotmail and Yahoo contacts from contacts gem.
If you are trying to fetch contacts from Facebook, there is a facebooker plugin available for that.
But you have not cleared in your comment that apart from 3 where do you want to fetch contacts from.
Cheers 🙂
Puneet
Hi punnet,
My name is Phani, i need the same thing which ganesh posted, i need to import the contacts from AOL, facebook, orkut and etc( including the default set Yahoo-Gmail-Hotmail.)
For a social application…..
Thanks
Phani
Hi Ganesh and Phani,
Sorry I was busy in some work.. well I don’t know how to fetch contacts from AOL, Rediff etc. I will look at it and let you guys know soon about it.. but yes I have done how to fetch contacts from Facebook..
There is one plugin available for this “Facebooker”.. u need to install that using
ruby script/plugin install git://github.com/mmangino/facebooker.git
I will soon publish a post on this probably in a day or two… meanwhile go through the docs and I will keep you updating 🙂
Regards
Puneet
Guys,
Anyone know how Ruby integrates with .Net code?
Hi puneet,
I have implemented method of Contacts Gem.. Working very fine.
Thank you 4 provided Contacts Gem article,
Nice work..!
Now I’m facing problem with File download service.. I’m working on resume upload service.. So that I want to make functionality by which will provide a link which get download that particular file from its source location where its is actually uploaded one..
In short need help to create File Download Service(with File Download dialog Box)
Thank u.
Hi ganesh,
For your reference I would like to tell you that ruby provides one method called “send_file”
The syntax would be like: send_filev “Location of the FIle”, :type=> ‘text/doc; charset=utf-8; header=present’, :disposition=>’inline’, :filename=>”Your File Name”
Please look at this url for your reference:
http://api.rubyonrails.org/classes/ActionController/Streaming.html#M000443
Let me know if that helps
Cheers!!
Thanks Puneet,
It worked for my task.. But did some modifications with the syntax…
like
send_file “public/data/#{@product.f_name}”, :type=> ‘text/doc; charset=utf-8; header=present’, :disposition=>’inline’
Where – “public/data” is file location in the project and
@product.f_name -> file name retrieving from the db.
Now here no need to pass filename for :filename => ….!
Thanks 4 co-operation.
Cheers!!!!!!!!
– Ganesh Kathare.
@ganesh,
Looks good that your code is up and running 🙂
Cheers!!
Hi Puneet,
Today, I come with some more problem where I need your help..!
1)
SMS Integration:
I’m working on applications which will provide service for Mobile No verification by SMS. If number get verify by replied SMS then only he/she can register on the site..! So, in this appln I have to integrate SMS service with its API..But dont know how do I Implement??
What are the settings it requires in ROR??
I also have searched this with many help blog on the net.. But not getting it exactly..!
– I got A/c n API key of ZNISMS.com (paid service.)
2)
Payment Gateway Integration:
For this I stucked on the point where and how do I integrate Payment gateway??? in the application while implementing transaction part of the apllications Buy/Sale service..
In the both service I have to interprete with third party service… What n How in ROR??
Please Help..!!!
Regards,
-Ganesh K.
Hey puneet,
I got the solution for 1st problem, Now expected service working very fine..
But still I stucked @ 2nd point.. So still doing R&D on it..!
Let me know if you got any solution regarding to 2nd problem..!
Got some relief due to SMS Integration..!
Thanks n Cheers..!!
_Ganesh Kathare.
hey ganesh,
sorry for replying late dude as I got engaged with some work.. Ganesh I haven’t worked on SMS integration part(first of all), secondly I can’t even refer you some guy who has worked on it, coz I don’t know..
Better you try to figure out urself.. and post in your blog so that it will be helpful for others…
Regards
Puneet Pandey
Hi puneet,
Need help for file(imagefile) uploading using ajax
I made something like
## myview.html.erb
{:action => “uploadimage”}, :html => {:multipart => true}) do %>
## with controller
def uploadimage
image = params[:custom][:image]
@custom = Custom.new(@user,image,”greeting1″)
@custom.save
end
I can upload file using form_tag with same code.. But not getting result with form_remote_tag..
So, can you help..??
Thanks,
-Ganesh K
Hi puneet,
Need help for file(imagefile) uploading using ajax
I made something like
## myview.html.erb
{:action => “uploadimage”}, :html => {:multipart => true}) do %>
## with controller
def uploadimage
image = params[:custom][:image]
@custom = Custom.new(@user,image,”greeting1″)
@custom.save
end
I can upload file using form_tag with same code.. But not getting result with form_remote_tag..
So, can you help..??
Thanks,
-Ganesh K
Hi puneet,
Need help for file(imagefile) uploading using ajax
I made something like
## myview.html.erb
{:action => “uploadimage”}, :html => {:multipart => true}) do %>
## with controller
def uploadimage
image = params[:custom][:image]
@custom = Custom.new(@user,image,”greeting1″)
@custom.save
end
I can upload file using form_tag with same code.. But not getting result with form_remote_tag..
So, can you help..??
Thanks,
-Ganesh K
Thanks Ujwal for the Ping back, It’ll certainly help others. 🙂
Good collection !!
Please include some more advanced topics.
Thanks !!
Thanks for figuring it out.. will definitely include some latest set of questions.. but due to my engagements in other activities, I am not able to update my blog.. So, sincere thanks once again, will keep everyone updating pretty soon 🙂
Hi puneet,
Do u give detail explanation for the q:difference between render and redirect?
render not sends request to controller’s method, whereas redirect_to first sends the request to the controller and then render the view.. Hope it helps!!
Hello sir,
i have a simple question,
could you please answer.
In Ruby there is a command called ‘require’. Explain what this command used to include a Ruby Gem in a file.
require is used when you need a specific set of actions from a single source… so, say I have a controller called contacts_controller.rb. If, I write require ‘contacts’, It will look out the dependencies(say in environment.rb) If you have written there config.gem ‘contacts’, it will load that file for you…
Another example is authentication system, where you write the logic once and use it in every controller with require ‘authenticated_system'(for an example)
That’s how require works.. you can check for IRB(I hope you know abt it) to see if you’re meeting with the dependencies or not..
Is that the answer of your question ?
Cheers!!
Puneet Pandey
Here are some more interview questions..
1. Explain callbacks.
2. Explain has_many and has_and_belongs_to_many
3. What is RESTful?
4. How do you send mails using ActiveMessaging?
5. How is mongrel different from WEBrick?
6. How do you fetch a single row from SQL table in Rails(:first or with some :conditions)?
7. How do you download an image? Explain the process through MVC architecture
8. How is URL mapped to your Rails application?
(Don’t mind if these questions were repeated in the comment section earlier)
Thanks Vineeth for the Questions. Will give a link to these questions with this post… 🙂
Here are some ruby interview questions….
1. Diff between class methods and instance methods
2. include vs extend
3. method overloading in ruby
4. method overriding in ruby
5. block vs proc
6.Ruby variables
Q28. How is class method defined in Ruby?
def self.method_name
…
end
superb info
hi frends you want to more information in ruby on rails visit http://www.rubyonrailsinfo.blogspot.com
Sir
i am joining new learning course on Ruby on Rails it is easy course and in this RoR features is there in this field
Hi puneet,
I m newbie to ROR & your questions gave me confidence to face any interview. Really Thanks 🙂
You’re most welcome 🙂
Best Regards
Puneet
Mr puneet i have some Queries
1.What pure Object oriented programming provides you in RoR ?
2.How to connect with two databases from one application?
3.How many other frameworks as rails for Ruby is there?
for 2nd: You can create a model. Write something like:
class Post < ActiveRecord::Base
establish_connection :posts
set_table_name :posts
end
## Inside your database.yml file
posts
adapter: mysql
host: localhost
username: YOUR_USER_NAME
password: YOUR_PASSWORD
for 3rd: Merb is the other framework. But Rails-3 has features of both Rails and Merb. There is also Mobile framework for Ruby, known as “Rhodes”
Hope it helps!!
Thanks for the nice collection…its very helpful
Thank u puneet ,
Thanks a lot Puneet .It’ll help me a lot