[phase-16]improve error message
This commit is contained in:
parent
32a3149ca9
commit
4fbac95ee1
@ -4,15 +4,33 @@ module GlossaryMacros
|
|||||||
|
|
||||||
desc "create macro which links to glossary term by id."
|
desc "create macro which links to glossary term by id."
|
||||||
macro :termno do |obj, args|
|
macro :termno do |obj, args|
|
||||||
|
begin
|
||||||
|
raise 'no parameters' if args.count.zero?
|
||||||
|
raise 'too many parameters' if args.count > 1
|
||||||
term_id = args.first
|
term_id = args.first
|
||||||
term = GlossaryTerm.find(term_id)
|
term = GlossaryTerm.find(term_id)
|
||||||
link_to term.name, project_glossary_term_path(@project, term)
|
link_to term.name, project_glossary_term_path(@project, term)
|
||||||
|
rescue => err_msg
|
||||||
|
raise <<-TEXT.html_safe
|
||||||
|
Parameter error: #{err_msg}<br>
|
||||||
|
Usage: {{termno(glossary_term_id)}}
|
||||||
|
TEXT
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
desc "create macro which links to glossary term by name."
|
desc "create macro which links to glossary term by name."
|
||||||
macro :term do |obj, args|
|
macro :term do |obj, args|
|
||||||
term = GlossaryTerm.find_by(name: args.first)
|
begin
|
||||||
|
raise 'no parameters' if args.count.zero?
|
||||||
|
raise 'too many parameters' if args.count > 1
|
||||||
|
term = GlossaryTerm.find_by!(name: args.first)
|
||||||
link_to term.name, project_glossary_term_path(@project, term)
|
link_to term.name, project_glossary_term_path(@project, term)
|
||||||
|
rescue => err_msg
|
||||||
|
raise <<-TEXT.html_safe
|
||||||
|
Parameter error: #{err_msg}<br>
|
||||||
|
Usage: {{term(name)}}
|
||||||
|
TEXT
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user