Ruby on Rails LinkedIn Skill Assessment Answer

Here, We see Ruby on Rails LinkedIn Skill Assessment Answer. This assessment test consists of 15-20 MCQs to demonstrate your knowledge of your selected skills. MCQs come from different topics – Active Records, Architecture, Controllers, Routes, and Views.

List of all LinkedIn Skills Assessment Answer

Ruby on Rails LinkedIn Skill Assessment Answer

Ruby on Rails LinkedIn Skill Assessment Answer

Q1. When rendering a partial in a view, how would you pass local variables for rendering?

  •  <%= render partial: “nav”, selected: “about”}%>
  •  <%= render partial: “nav”, local_variables: {selected: “about”} %>
  •  <%= render partial: “nav”, locals: {selected: “about”}

Q2. Within a Rails controller, which code will prevent the parent controller’s before_action:get_feature from running?

  •  skip_before_action :get_feature
  •  skip :get_feature, except: []
  •  prevent_action :get_feature
  •  :redis_cache_store

Q3. Which statement correctly describes a difference between the form helper methods form_tag and form_for?

  •  The form_tag method is for basic forms, while the form_for method is for multipart forms that include file uploads.
  •  The form_tag method is for HTTP requests, while the form_for method is for AJAX requests.
  •  The form_tag method typically expects a URL as its first argument, while the form_for method typically expects a model object.
  •  The form_tag method is evaluated at runtime, while the form_for method is precompiled and cached.

Q4. What is before_action (formerly known as before_filter)?

  •  A trigger that is executed before an alteration of an object’s state
  •  A method that is executed before an ActiveRecord model is saved
  •  A callback that fires before an event is handled
  •  A method in a controller that is executed before the controller action method

Q5. Which module can you use to encapsulate a cohesive chunk of functionality into a mixin?

  •  ActiveSupport::Concern
  •  RailsHelper.CommonClass
  •  ActiveJob::Mixin
  •  ActiveSupport::Module

Q6. In Rails, which code would you use to define a route that handles both the PUT and PATCH REST HTTP verbs?

  •  put :items, include: patch
  •  put ‘items’, to: ‘items#update’
  •  match ‘items’, to ‘items#update’, via: [:put, :patch]
  •  match :items, using: put && patch

Q7. Which choice includes standard REST HTTP verbs?

  •  GET, POST, PATCH, DELETE
  •  REDIRECT, RENDER, SESSION, COOKIE
  •  INDEX, SHOW, NEW, CREATE, EDIT, UPDATE, DESTROY
  •  CREATE, READ, UPDATE, DELETE

Q8. Which ActiveRecord query prevents SQL injection?

  •  Product.where(“name = #{@keyword}”)
  •  Product.where(“name = ” << @keyword}
  •  Product.where(“name = ?”, @keyword
  •  Product.where(“name = ” + h(@keyword)

Q9. Given this code, which statement about the database table “documents” could be expected to be true?

class Document < ActiveRecord::Base
  belongs_to :documentable, polymorphic:trueendclass Product < ActiveRecord::Base
  has_many :documents, as::documentableendclass Service < ActiveRecord::Base
  has_many :documents, as::documentableendCode language: CSS (css)
  •  It would include a column for :type.
  •  It would include columns for :documentable_id and :documentable_type.
  •  It would include columns for :documentable and :type.
  •  It would include a column for :polymorphic_type.

Q10. Are instance variables set within a controller method accessible within a view?

  •  Yes, any instance variables that are set in an action method on a controller can be accessed and displayed in a view.
  •  Yes, instance variables set within an action method are accessible within a view, but only when the render is explicitly called inside the action method.
  •  No, instance variables in a controller are private and are not accessible.
  •  No, instance variables can never be set in a controller action method.

Q11. When validation of a field in a Rails model fails, where are the messages for validation errors stored?

  •  my_model.errors[:field]
  •  my_model.get_errors_for(:field)
  •  my_model.field.error
  •  my_model.all_errors.select(:field)

Q12. If a database table of users contains the following rows, and id is the primary key, which statement would return only an object whose last_name is “Cordero”?

-------------------------------

| id | first_name | last_name |
|----|------------|-----------|
| 1  | Alice      | Anderson  |
| 2  | Bob        | Buckner   |
| 3  | Carrie     | Cordero   |
| 4  | Devon      | Dupre     |
| 5  | Carrie     | Eastman   |

-------------------------------
  •  User.where(first_name: “Carrie”)
  •  User.not.where(id: [1, 2, 4, 5])
  •  User.find_by(first_name: “Cordero”)
  •  User.find(3)

Q13. How would you generate a drop-down menu that allows the user to select from a collection of product names?

  •  <%= select_tag(@products) %>
  •  <%= collection_select(@products) %>
  •  <select name=”product_id”> <%= @products.each do |product| %> <option value=”<%= product.id %>”/> <% end %></select>
  •  <%= collection_select(:product, :product_id, Product.all, :id, :name) %>

Q14. For a Rails validator, how would you define an error message for the model attribute address with the message “This address is invalid”?

  •  model.errors = This address is invalid
  •  errors(model, :address) << “This address is invalid”
  •  display_error_for(model, :address, “This address is invalid”)
  •  model.errors[:address] << “This address is invalid”

Custom Validator

Q15. Given the URL helper product_path(@product), which statement would be expected to be false?

  •  If sent using the PATCH HTTP method, the URL could be used to update a product in the database.
  •  If sent using the POST HTTP method, the URL would create a new product in the database.
  •  If sent using the GET HTTP method, the URL would execute the show action in ProductsController.
  •  If sent using the DELETE HTTP method, the URL would call the destroy action by default.

Q16. Given this code, which choice would be expected to be a true statement if the user requests the index action?

class DocumentsController < ApplicationController
  before_action :require_logindef index@documents = Document.visible.sorted
  endendCode language: CSS (css)
  •  The user’s documents will be loaded.
  •  The index action will run normally because :index is not listed as an argument to before_action.
  •  The require_login method will automatically log in to the user before running the index action.
  •  The index action will not be run if the require_login method calls render or redirect_to.

Q17. In Rails, how would you cache a partial template that is rendered?

  •  render partial: ‘shared/menu’, cached: true
  •  render_with_cache partial: ‘shared/menu’
  •  render partial: ‘shared/menu’
  •  render partial: ‘shared/menu’, cached_with_variables: {}

Q18. What is the reason for using Concerns in Rails?

  •  Concerns allow modularity and code reuse in models, controllers, and other classes.
  •  Concerns are used to separate class methods from models.
  •  Concerns are used to increase the security of Rails applications.
  •  Concerns are used to refactor Rails views.

Q19. When using an ActiveRecord model, which method will create the model instance in memory and save it to the database?

  •  build
  •  new
  •  create
  •  save

Reference

Q20. You are using an existing database that has a table named coffee_orders. What would the ActiveRecord model be named to use that table?

  •  CoffeeOrders
  •  Coffee_Orders
  •  Coffee_Order
  •  CoffeeOrder

Reference

Q21. In ActiveRecord, what is the difference between the has_many and has_many: through associations?

  •  The has_many: through association is the one-to-many equivalent to the belongs_to one-to-one association.
  •  Both associations are identical and has_many: through is maintained only for legacy purposes.
  •  The has_many association is a one-to-many association, while has_many: through is a one-to-one association that matches through a third model.
  •  Both are one-to-many associations but with has_many: through, the declaring model can associate through a third model.

Q22. How do you add Ruby code inside Rails views and have its result outputted in the HTML file?

  •  Create an embedded Ruby file (.html.erb) and surround the Ruby code with <% %>.
  •  Insert Ruby code inside standard HTML files and surround it with <% %>. The web server will handle the rest.
  •  Create an embedded Ruby file (.html.erb) and surround the Ruby code with <%= %>.
  •  Put the code in a .rb file and include it in a <link> tag of an HTML file.

Reference

Q23. How would you render a view using a different layout in an ERB HTML view?

  •  <% render ‘view_mobile’ %>
  •  <% render ‘view’, use_layout: ‘mobile’ %>
  •  <% render ‘view’, layout: ‘mobile’ %>
  •  <% render_with_layout ‘view’, ‘mobile’ %>

Reference

Q24. Given this controller code, which choice describes the expected behaviour if parameters are submitted to the update action that includes values for the product’s name, style, colour, and price?

class ProductController < ActionController::Basedef update@product = Product.find(params[:id])
    if@product.update_attributes(product_params)
      redirect_to(product_path(@product))
    else
      render('edit')
    endend

  private

  def product_params
    params.require(:product).permit(:name, :style, :color)
  endendCode language: CSS (css)
  •  The product will not be updated and the edit template will be rendered.
  •  The product will not be updated and the controller will raise an ActiveModel::ForbiddenAttributes exception.
  •  The product will be updated with the values for name, style, and colour, but the value for price will be ignored.
  •  The product will be updated with the values for name, style, colour, and price.
  •  A
class Classroom < ActiveRecord::Base
  belongs_to :students, class_name:'Student'endclass Student < ActiveRecord::Base
  belongs_to :classrooms, class_name:'Classroom'endCode language: CSS (css)
  •  B
class Student < ActiveRecord::Base
  has_many :classrooms, dependent:trueendclass Classroom < ActiveRecord::Base
  has_many :students, dependent:falseendCode language: CSS (css)
  •  C
class Student < ActiveRecord::Base
  has_many :classroomsendclass Classroom < ActiveRecord::Base
  belongs_to :studentendCode language: CSS (css)
  •  D
class Classroom < ActiveRecord::Base
  has_many :studentsendclass Student < ActiveRecord::Base
  belongs_to :classroomendCode language: CSS (css)

Q26. Where should you put images, JavaScript, and CSS so that they get processed by the asset pipeline?

  •  app/static
  •  app/images
  •  app/assets
  •  app/views

Reference: RoR folder structure

  •  <script src=”/main.js”></script>
  •  <%= javascript_include_tag ‘main’ %>
  •  <%= javascript_tag ‘main’ %>
  •  <!– include_javascript ‘main’ –>

Q28. In Rails, what caching stores can be used?

  •  MemCacheStore, MongoDBStore, MemoryStore, and FileStore
  •  MemoryStore, FileStore, and CacheCacheStore
  •  MemoryStore, FileStore, MemCacheStore, RedisCacheStore, and NullStore
  •  MemoryStore, FileStore, MySQLStore, and RedisCacheStore

Q29. What is the correct way to generate a ProductsController with an index action using only the command-line tools bundled with Rails?

  •  rails generate controller –options {name: “Products”, actions: “index”}
  •  rails generate controller –name Products –action index
  •  rails generate controller Products index
  •  rails generate ProductsController –actions index

Q30. If a model class is named Product, in which database table will ActiveRecord store and retrieve model instances?

  •  product_table
  •  all_products
  •  products_table
  •  products
  •  Mustache
  •  Haml
  •  Liquid
  •  Tilt

Reference

Q32. When Ruby methods add an exclamation point at the end of their name (such as sort!), what does it typically indicate?

  •  The method executes using “sudo” privileges.
  •  Any ending line return will be omitted from the result.
  •  The method will ignore exceptions that occur during execution.
  •  It is a more powerful or destructive version of the method.

Q33. What part of the code below causes the method #decrypt_data to be run?

class MyModel < ApplicationRecord
after_find :decrypt_dataendCode language: CSS (css)
  •  MyModel.first.update(field: 'example')
  •  MyModel.where(id: 42)
  •  MyModel.first.destroy
  •  MyModel.new(field: 'new instance')

Q34. Which Rails helper would you use in the application view to protect against CSRF (Cross-Site Request Forgery) attacks?

  •  csrf_protection
  •  csrf_helper
  •  csrf_meta_tags
  •  csrf

Reference

Q35. In the model User, you have the code shown below. When saving the model and model.is_admin is set to true, which callback will be called?

before_save :encrypt_data, unless: ->(model) { model.is_admin }
after_save :clear_cache, if: ->(model) { model.is_admin }
before_destroy :notify_admin_users, if: ->(model) { model.is_admin }
  •  encrypt_data
  •  clear_cache
  •  notify_admin_users
  •  None of these callbacks will be called when is_admin is true. [Explanation]: When saving the User model and model.is_admin is set to true, the after_save callback will be called.

The before_save callback with the unless: ->(model) { model.is_admin } condition will not be called because the is_admin attribute is true.

The before_destroy callback with the if: ->(model) { model.is_admin } condition will be called if the is_admin attribute is true and the record is being destroyed, but this is not relevant to the scenario of saving the User model.

Therefore, only the after_save callback with the if: ->(model) { model.is_admin } condition will be called in this scenario. This callback will be triggered after the record has been saved if the is_admin attribute is true. In this case, the clear_cache method will be called.

Q36. In a Rails controller, what does the code params.permit(:name, :sku) do?

  •  It filters out all parameters.
  •  It filters out submitted form parameters that are not named :name or :sku to make forms more secure.
  •  It raises an error if parameters that are not named :name or :sku are found.
  •  It raises an error if the :name and :sku parameters are set to nil.

Q37. Review the code below. Which Ruby operator should be used to fill in the blank so that the sort method executes properly?

[5,8,2,6,1,3].sort {|v1,v2| v1 ___ v2}
  •  =>
  •  <==>
  •  <=>
  •  ||

Q38. You made a spelling mistake while creating a table for bank accounts. Which code would you expect to see in a migration to fix the error?

  •  A
class IAmADummy < ActiveRecord::Migration
  def change
    rename_column :accounts, :account_hodler, :account_holder
  end
endCode language: CSS (css)
  •  B
class FixSpellling < ActiveRecord::Migration
  def change
    rename :accounts, :account_hodler, :account_holder
  end
end
Code language: CSS (css)
  •  C
class CoffeeNeeded < ActiveRecord::Migration
  def change
    remove_column :accounts, :account_hodler
    add_column :accounts, :account_holder
  end
end
Code language: CSS (css)
  •  D
class OopsIDidItAgain < ActiveRecord::Migration
  def rename
    :accounts, :account_hodler, :account_holder
  end
end
Code language: CSS (css)

Q39. Which HTML is close to what this code would output?

<% check_box(:post, :visible) %>
Code language: CSS (css)
  •  A
<input type="hidden" name="post[visible]" value="0" />
<input type="checkbox" name="post[visible]" value="1" />Code language: HTML, XML (xml)
  •  B
<checkbox name="post[visible]" value="1" />
Code language: HTML, XML (xml)
  •  C
<input type="checkbox" name="post[visible]" value="1" data-default-value="0" />
Code language: HTML, XML (xml)
  •  D
<input type="checkbox" name="post[visible]" value="1" />
Code language: HTML, XML (xml)

Q40. There is a bug in this code. The logout message does not appear on the login template. What is the cause?

class AccessController < ActionController::Base
  def destroy
    session[:admin_id] = nil
    flash[:notice] = ""You have been logged out""
    render('login')
end
Code language: HTML, XML (xml)
  •  The string assigned to flash[:notice] will not be available until the next browser request.
  •  An instance variable should be used for flash[:notice]
  •  This is an invalid syntax to use to assign valuse to flash[:notice]
  •  The previous value of flash[:notice] will not be cleared automatically [Explanation]: The cause of the bug is a syntax error in the line that sets the value of the flash[:notice] message. The string literal “You have been logged out” is not properly enclosed in the surrounding string literal.

Q41. Which statement about ActiveRecord models is true?

  •  Each database column requires adding a matching attr_accessor declaration in the ActiveRecord model.
  •  All attributes in an ActiveRecord model are read-only and declared as writable using attr_accessible
  •  An instance of an ActiveRecord model will have attributes that match the columns in a corresponding database table.
  •  ActiveRecord models can have only attributes that have a matching database column

Q42. What is the correct way to assign a value to the session?

  •  A
$_SESSION['user_id'] = user.id
Code language: PHP (php)
  •  B
@session ||= Session.new << user.id
Code language: CSS (css)
  •  C
session_save(:user_id, user.id)
Code language: CSS (css)
  •  D
session[:user_id] = user.id

Q43. Which choice best describes the expected value of @result?

@result = Article.first.tags.build(name: 'Urgent')
Code language: CSS (css)
  •  either true or false
  •  an unsaved Tag instance
  •  a saved Tag instance
  •  an array of Tag instances

Q44. What is the correct syntax for inserting a dynamic title tag into the header of your page from within an ERB view template?

  •  A
<% render :head do %>
  <title>My page title</title>
<% end %>
Code language: HTML, XML (xml)
  •  B
<% content_for :head do %>
  <title>My page title</title>
<% end %>
Code language: HTML, XML (xml)
  •  C
<% render "shared/head, locals: {title: "My page title"} %>Code language: HTML, XML (xml)
  •  D
<% tield :head do %>
  <title>My page title</title>
<% end %>
Code language: HTML, XML (xml)

Q45. How would you validate that a project’s name is not blank, is fewer than 50 characters, and is unique?

  •  A
class Project
  validates :name, presence: true, length: { maximum: 50 }, uniqueness: true
endCode language: CSS (css)
  •  B
class Project
  validate_attribute :name, [:presence, :uniqueness], :length => 1..50
end
  •  C
class Project
  validate_before_save :name, [:presence, [:length, 50], :uniqueness], :length => 1..50
end
  •  D
class Project
  validates_presense_of :name, :unique => true
  validates_length_of :name, :maximum => 50
end

Q46. If a product has a user-uploadable photo, which ActiveStorage method should fill in the blank?

class Product << ApplicationRecord
  ____ :photo
end

Code language: CSS (css)
  •  has_one_attached
  •  has_image
  •  attached_file
  •  acts_as_attachment
link_to('Link', {controller: 'products', action: 'index', page: 3})
Code language: JavaScript (javascript)
  •  A
/products?page=3
  •  B
/products/index/3
  •  C
/products/page/3
  •  D
/products/index/page/3

Q48. Which part of the Rails framework is primarily responsible for making decisions about how to respond to a browser request?

  •  View
  •  controller
  •  ActiveRecord
  •  model

Q49. If the User is an ActiveRecord class, which choice would be expected to return an array?

  •  User.where(last_name: ‘Smith’)
  •  User.find_or_create(last_name: ‘Smith’)
  •  User.find_by_last_name(‘Smith’)
  •  User.find(‘Smith’)

Q50. Which choice is not a valid Rails route?

  •  route “products/index”, to: “products/index”, via: :get
  •  match “products/index”, to: “products#index”, via: :get
  •  root “products/index”
  •  get “products/index”

Q51. Given a table of blog_posts and a related table of comments (comments made on each blog post), which ActiveRecord query will retrieve all blog posts with comments created during @range?

  •  BlogPost.joins (:comments).where(comments: {created_at: @range})
  •  BlogPost.where([‘comments.created_at’, @range])
  •  BlogPost.preload (“comments.created_at”).where(created_at: @range)
  •  BlogPost.includes (:comments).where(‘comments.created_at’ => @range)

Q52. Given this Category model with an attribute for “name”, what code would fill in the blank so that it sets saved_name to a string that is the category name that existed before the name was changed?

class Category < ActiveRecord::Base<em># has a database column for :name</em>end

category = Category.first
category.name = 'News'
saved_name = _____
  •  category.name_was
  •  category.saved(:name)
  •  category.changes[:name]
  •  category.name_changed?

Q53. Given two models, what is the issue with the query used to fetch them?

class LineItem < ApplicationRecordendclass Order < ApplicationRecord
  has_many :line_itemsend

Order.limit(3).each { |order| puts order.line_items }
  •  This query will result in extensive caching, and you will have to then deal with caching issues.
  •  This query will result in the N+1 query issue. Three orders will result in four queries.
  •  This query will result in the 1 query issue. Three orders will result in one query.
  •  There are no issues with this query, and you are correctly limiting the number of Order models that will be loaded.

Q54. Which choice is an incorrect way to render a partial?

  •  <%= render(:partial => ‘shared/product’) %>
  •  <%= render(‘shared/product’, :collection => @products) %>
  •  <%= render(template: ‘shared/product’, with: @products) %>
  •  <%= render(‘shared/product’, locals: { product: @product }) %>

Q55. Which code sample will skip running the login_required “before” filter on the get_posts controller action?

  •  before_action :login_required, skip: [:get_posts]
  •  skip_before_action :login_required, except: [:get_posts]
  •  skip_before_action :login_required, only: [:get_posts]
  •  skip_action before: :login_required, only: [:get_posts]

Q56. Within a Rails model with a cache_key method, which code snippet will expire the cache whenever the model is updated?

  •  A
after_update_commit do
destroy
endCode language: JavaScript (javascript)
  •  B
after_destroy do
Rails.cache.delete(cache_key)
endCode language: CSS (css)
  •  C
after_update_commit do
Rails.cache.delete(cache_key)
endCode language: CSS (css)
  •  D
after_update_commit do
Rails.cache.destroy(cache_key)
endCode language: CSS (css)

Q57. After this migration has been executed, which statement would be true?

class CreateGalleries < ActiveRecord::Migrationdef change
    create_table :galleriesdo|t|
      t.string :name, :bg_color
      t.integer :position
      t.boolean :visible, default:false
      t.timestamps
    endendend
  •  The galleries table will have no primary key.
  •  The galleries table will include a column named “updated_at”.
  •  The galleries table will contain exactly seven columns.
  •  The galleries table will have an index on the position column.

Q58. Which code would you add to return a 404 to the API caller if the user is not found in the database?

class UsersController < ApplicationControllerdef show@user = User.find(params[:id])
    render json:@user, status::ok,
    <em># Missing code</em>endCode language: CSS (css)
  •  A
rescue => e
  logger.info e
endCode language: PHP (php)
  •  B
rescue_from ActiveRecord::RecordNotFound, with::render_not_found_responseCode language: CSS (css)
  •  C
rescue ActiveRecord::RecordNotFound
  render json: { message:'User not found' }, status::not_foundendCode language: CSS (css)
  •  D
raise ActiveRecord::RecordNotFound
  render json: { message:'User not found' }, status::user_not_foundendCode language: CSS (css)

Q59. What decides which controller receives which requests?

  •  model
  •  view
  •  web server
  •  router

Q60. When rendering a partial in a view, how would you pass local variables for rendering?

  •  <%= render partial: “nav”, globals: {selected: “about”} %>
  •  <%= render partial: “nav”, local_variables: {selected: “about”} %>
  •  <%= render partial: “nav”, locals: {selected: “about”} %>
  •  <%= render partial: “nav”, selected: “about”} %>

Q61. Given this code, and assuming @user is an instance of User that has an assigned location, which choice would be used to return the user’s city?

class Location < ActiveRecord::Base<em># has database columns for :city, :state</em>
        has_many :usersendclass User < ActiveRecord::Base
        belovngs_to :location

        delegate :city, :state, to::location, allow_nil:true, prefix:trueend
  •  @user.user_city
  •  @user.location_city
  •  @user.city
  •  @user.try(:city)

Reference

Q62. Where would this code most likely be found in a Rails project?

scope :active, lambda { where(:active => true) }Code language: JavaScript (javascript)
  •  an Active Record model
  •  an ActionView template
  •  an ApplicationHelper file
  •  an ActionController controller

Q63. What is a standard prerequisite for implementing Single Table Inheritance (STI)?

  •  The models used for STI must mix in the module ActiveRecord::STI
  •  All models used for STI must include “self.abstract_class=true”.
  •  All database tables used for STI must be related to each other using a foreign key.
  •  The database table used for STI must have a column named “type”.

Q64. A way that views can share reusable code, such as formatting a date, is called a _?

  •  helper
  •  utility
  •  controller
  •  formatter

Q65. How do you add Ruby code inside Rails views and have its result outputted in the HTML file?

  •  Insert Ruby code inside standard HTML files and surround it with <% %>. The web server will handle the rest.
  •  Create an embedded Ruby file (.html.erb) and surround the Ruby code with <% %>
  •  Put the code in an.rb. file and include it in a <link> tag of an HTML file.
  •  Create an embedded Ruby file (.html.erb) and surround the Ruby code with <%= %>.

Q66.You are working with a large database of portfolios that sometimes have an associated image. Which statement best explains the purpose of includes(:image) in this code?

@portfolios = Portfolio.includes(:image).limit(20)

@portfolios.each do |portfolio|
    puts portfolio.image.caption
end
Code language: JavaScript (javascript)
  •  It preloads the image files using the asset pipeline.
  •  It selects only portfolios that have an image attached.
  •  It includes the number of associated images when determining how many records to return.
  •  It will execute two database queries of 21 database queries.

Q67. What line of code causes the method decrypt_data to be run?

class MyModel < ApplicationRecord
  after_find :decrypt_data
end
Code language: CSS (css)
  •  MyModel.decrypt_data
  •  MyModel.query(id: 42)
  •  MyModel.find(:decrypt_data)
  •  MyModel.where(id: 42)

Q68. Which line of inquiry would you follow after receiving this error message: No route matches [POST] “/burrito/create”?

  •  Check that there is a matching path for “/burrito/create” in you paths.rb file.
  •  Check that there is a post route that matches “/burrito/create” in your routes.rb file.
  •  Add the line resources :burritos to your routes.rb file.
  •  Check that there is a get route that matches “burrito/create” in your paths.rb file.

Q69. Which controller action is not in danger of returning double render errors?

  •  A
def show
  if params[:detailed] == "1"
    redirect_to(action: 'detailed_show')
  end
  render('show')
end
Code language: JavaScript (javascript)
  •  B
def show
  render('detailed_show') if params[:detailed] == "1"
  render('show') and return
end
Code language: JavaScript (javascript)
  •  C
def show
  if params[:detailed] == "1"
    render('detailed_show')
  end
  render('show')
end
Code language: JavaScript (javascript)
  •  D
def show
  if params[:detailed] == "1"
    render('detailed_show')
  end
endCode language: JavaScript (javascript)

Q70. Which keyword is used in a layout to identify a section where content from the view should be inserted?

  •  render
  •  puts
  •  view_content
  •  yield

Reference

Q71. Which choice would you not consider when selecting a gem for your project?

  •  how many downloads it have on Ruby Toolbox
  •  if it is well documented
  •  how long do pull requests and issues stay open
  •  the date it was first released

Q72. What decides which controller receives which requests?

  •  web server
  •  router
  •  view
  •  model

Q73. Which statement about this code will always be true?

class UserController < ActionController::Basedef show@user = User.find_by_id(session[:user_id])
    @user||= User.first
  endendCode language: HTML, XML (xml)
  •  The variable @user will be set to the object returned by User.first unless session[:user_id] has a value.
  •  The result of User.find_by_id is irrelevant because the variable @user will always be set to the object returned by User.first.
  •  If User.find_by_id does not raise an exception, the variable @user will be set to the object returned by User.first.
  •  If User.find_by_id returns nil or false, the variable @user will be set to the object returned by User.first.

Q74. When defining a resource route, seven routes are defined by default. Which two methods allow defining additional routes on the resource?

  •  only, except
  •  match, resolve
  •  action, path
  •  member, collection

Q75. You are rendering a partial with this code. What will display the user’s name?

<%= render partial: 'user_info', object: { name: 'user' } %>Code language: JavaScript (javascript)
  •  <%= locals.user_info.name %>
  •  <%= object.name %>
  •  <%= @user.name %>
  •  <%= @user_info.name %>

Q76. Once this form is submitted, which code in the controller would retrieve the string for :name?

<%= form_for(@category) do |f| %>
<%= f.text_field(:name) %>
<% end %>
Code language: HTML, XML (xml)
  •  params[:name]
  •  @params.name
  •  params.require(:category).permit(:name)
  •  params[:category][:name]

Q77. Which missing line would best show the correct usage of strong parameters?

class ProjectsController < ActionController::Basedef create
    Project.create(project_params)
  end

  private

  def project_params<em># Missing line</em>endend
  •  params[:project].allow(:name, :visible, :description)
  •  params[:project].allowed
  •  params.permit(:project).allow(:name, :visible, :description)
  •  params.require(:project).permit(:name, :visible, :description)

Strong Params

Q78. What is the purpose of the rake db:migrate command?

  •  To create a new database for the Rails application.
  •  To migrate the database schema to the latest version.
  •  To seed the database with initial data.
  •  To test the database connection.

reference

Scroll to Top