启动我的应用程序时如何避免语法错误

时间:2019-03-24 13:36:26

标签: ruby

我正在开发Ruby Notepad应用程序并收到奇怪的错误:

  

notepad.rb:12:在'require_relative'中:/home/orkos/Notepad/task.rb:24:语法错误,意外的输入终止(SyntaxError)

在我的代码中,“ end”的数字一切正常。

这是我的应用task.rb代码:

require 'date'
class Task < class Post
  def initialize
    super
    @due_date = Time.now
  end

  def read_from_console
    puts "Що потрібно зробити?"
    @text = STDIN.gets.chomp

    puts "До якого числа? Вкажіть дату в форматі ДД. ММ. РР"
    input = STDIN.gets.chomp

    @due_date = Date.parse(input)
  end

  def to_strings
    time_string = "Створено: #{@created_at.strftime("%Y.%m.%d, %H:%M:%S")} \n\r \n\r"
    deadline = "Крайній термін: #{@due_date}"
    return [deadline, @text, time_string]
  end
end

这是我的主要notepad.rb应用程序代码:

if (Gem.win_platform?)
  Encoding.default_external = Encoding.find(Encoding.locale_charmap)
  Encoding.default_internal = __ENCODING__

  [STDIN, STDOUT].each do |io|
    io.set_encoding(Encoding.default_external, Encoding.default_internal)
  end
end

require_relative 'post.rb'
require_relative 'link.rb'
require_relative 'task.rb'
require_relative 'memo.rb'
choices = Post.post_types

choice = -1

until choice >= 0 && choice < choices.size

  choices.each_with_index do |type, index|
    puts "\t#{index}. #{type}"
  end

  choice = STDIN.gets.chomp.to_i
end

entry = Post.create(choice)

entry.read_from_console

entry.save

puts "Ура, запис збережено!"

1 个答案:

答案 0 :(得分:2)

此:

class Task < class Post

应该是这样

class Task < Post