Ayd*_*kov 5 documentation ruby-on-rails yard
我正在使用 Yard 生成文档,但找不到任何关于 ruby on rails 项目的示例文档。我在rubydoc.info上只找到了简短的入门教程和一些 github 项目,但根本没有记录它们。请有人告诉我如何正确记录控制器(带动作)、模型、rails 项目的路线
例如我有这样的控制器:
class ArticlesController < ApplicationController
before_filter :authenticate_user!, except: [:show]
before_filter :restrict_user, only: [:edit, :update]
def index
@articles = current_user.articles.sort_by_rating.
paginate(:page => params[:page],
per_page: 5)
end
def new
@user = User.find(params[:user_id])
@article = @user.articles.build
end
def create
@user = User.find(params[:user_id])
@article = @user.articles.build(params[:article])
if @article.save
redirect_to @article, notice: 'Article was successfully created.'
else
render action: "new"
end
end
end
Run Code Online (Sandbox Code Playgroud)
和一个用户模型:
class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :token_authenticatable, :confirmable,
# :lockable, :timeoutable and :omniauthable :recoverable
devise :database_authenticatable, :registerable,
:rememberable, :trackable, :validatable
# Setup accessible (or protected) attributes for your model
attr_accessible :name, :email, :password, :password_confirmation, :remember_me
# attr_accessible :title, :body
validates_presence_of :name
validates_uniqueness_of :name, :email, :case_sensitive => false
has_many :articles, dependent: :destroy
letsrate_rater
end
Run Code Online (Sandbox Code Playgroud)
Ben*_*min -2
我认为这样的事情对你有用。但我不是 100% 确定你的问题是什么。
class ArticlesController < ApplicationController
before_filter :authenticate_user!, except: [:show]
def index
@articles = current_user.articles.sort_by_rating.
paginate(:page => params[:page],
per_page: 5)
end
def new
#I think this is self explanatory.
@article = Article.new
end
def create
#devise has the user id with current_user and rails will do the job for you.
@article = current_user.articles.build(article_params)
if @article.save
redirect_to @article, notice: 'Article was successfully created.'
else
render action: "new"
end
end
end
Run Code Online (Sandbox Code Playgroud)
文章模型,看起来像这样
class Article < ActiveRecord::Base
#Remember Rails 4 does use attr_accessible on the model
attr_accessible :title, :body, :user_id
#Article belongs to user
belongs_to :user
#Here we can validate presense of these fields.
validates :title, :body, :user_id, :presence => true
end
Run Code Online (Sandbox Code Playgroud)
用户模型。
class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :token_authenticatable, :confirmable,
# :lockable, :timeoutable and :omniauthable :recoverable
devise :database_authenticatable, :registerable,
:rememberable, :trackable, :validatable
# Setup accessible (or protected) attributes for your model
attr_accessible :name, :email, :password, :password_confirmation, :remember_me
# attr_accessible :title, :body
validates_presence_of :name
validates_uniqueness_of :name, :email, :case_sensitive => false
#relationship with the article
has_many :articles, dependent: :destroy
letsrate_rater
end
Run Code Online (Sandbox Code Playgroud)
如果您询问如何记录您的项目,请尝试 Yard。http://yardoc.org/或使用 RDoc,您可以使用以下内置 Rake 任务将其转换为浏览器友好的 HTML:
$ rake doc:app
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3322 次 |
| 最近记录: |