Rails控制台似乎不喜欢在同一行上用分号分隔的多个ruby语句。每当执行此操作时,下一行都以?>
开头,并且我发现仅执行了第一条语句。 是否必须将每个语句放在单独的行上?
>> user = User.new
user = User.new
=> #<User id: nil, username: "", hashed_password: "", first_name: "", last_name: "", email: "", display_name: "", user_level: 0, created_at: nil, updated_at: nil, posts_count: 0>
>> user.username = "John"; hashed_password = "John"; first_name = "John"; last_name = "coltrane"; email = "John@coltrane.com"; display_name = "Johndispay"; user_level = 9;
user.username = "John"; hashed_password = "John"; first_name = "John"; last_name = "coltrane"; email = "John@coltrane.com"; display_name = "Johndispay"; user_level = 9;
?> user.save
user.save
=> true
忽略
user.username = "John";
以外的所有内容
最佳答案
您需要说“用户”。因此Ruby知道您的意思是调用用户实例的属性分配方法。否则,您只需设置称为“hashed_password”等的局部变量。
>> user.username = "John"; user.hashed_password = "John"; user.first_name = "John"; user.last_name = "coltrane"; user.email = "John@coltrane.com"; user.display_name = "Johndispay"; user.user_level = 9;
虽然,您可以只传递要在新实例上设置的属性的哈希,就像这样
>> user = User.new(:username => "John", :hashed_password => "John", ...
关于ruby-on-rails - 分号作为Rails Console中的语句分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/930454/