📅  最后修改于: 2023-12-03 15:04:56.838000             🧑  作者: Mango
Ruby on Rails (RoR) 是一种使用 Ruby 编程语言的开源网络应用程序框架。它遵循了 Model-View-Controller (MVC) 设计模式,提供了丰富的工具和库,使得开发人员可以快速创建直观的和高效的 Web 应用程序。Ruby on Rails 的核心理念是 "Convention over Configuration",即它提供的默认配置可以让开发人员更快地开始工作,并提高开发人员的生产力。在 Ruby on Rails 中,开发人员不需要编写大量的底层代码和配置文件,可以更专注于业务逻辑和应用程序的核心功能。
面试 Ruby on Rails 开发人员时,可以问以下问题:
以下是 Ruby on Rails 中常用的代码片段:
class User < ActiveRecord::Base
has_many :articles
end
class Article < ActiveRecord::Base
belongs_to :user
end
rails g scaffold Article title:string content:text user:references
class ArticlesController < ApplicationController
def index
@articles = Article.all
end
def show
@article = Article.find(params[:id])
end
def new
@article = Article.new
end
def create
@article = Article.new(article_params)
if @article.save
redirect_to @article
else
render 'new'
end
end
private
def article_params
params.require(:article).permit(:title, :content, :user_id)
end
end
class Article < ActiveRecord::Base
before_save :set_slug
private
def set_slug
self.slug = title.parameterize
end
end
resources :articles
class ApplicationController < ActionController::Base
before_action :authenticate_user!
private
def authenticate_user!
unless current_user
redirect_to new_session_path
end
end
def current_user
@current_user ||= User.find_by(id: session[:user_id])
end
end