Class: Termworld::Commands::User

Inherits:
Thor
  • Object
show all
Defined in:
lib/termworld/commands/user.rb

Instance Method Summary collapse

Instance Method Details

#create(*options) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/termworld/commands/user.rb', line 6

def create(*options)
  option_parser = Utils::OptionParserWrapper.new([
    {option: ['-n', '--name [VALUE]', 'User name'], key: :name},
  ])
  params = option_parser.parse!
  return puts option_parser.error_message if option_parser.error_message
  if params[:name].nil?
    print "name: "
    params[:name] = $stdin.gets.chomp
  end

  user = Models::User.new(params)
  result = user.create
  return puts Utils::Color.reden "Failed create user" unless result
  puts Utils::Color.greenen "Successed create user!"
end

#list(*options) ⇒ Object



24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/termworld/commands/user.rb', line 24

def list(*options)
  option_parser = Utils::OptionParserWrapper.new([])
  option_parser.parse!
  return puts option_parser.error_message if option_parser.error_message

  users = Models::User.all
  if users.empty?
    puts Utils::Color.bluen "No users. Please create user first"
    puts "ex) $ termworld user create --name=<name>"
    return
  end
  users.each do |user|
    puts "id:#{user.id} #{user.name}"
  end
end