Rails模型选择字段

moddayjob

我是Rails的新手。在Django中,模型字段有一个choices选项,如下所示:

class Student(models.Model):
    FRESHMAN = 'FR'
    SOPHOMORE = 'SO'
    JUNIOR = 'JR'
    SENIOR = 'SR'
    GRADUATE = 'GR'
    YEAR_IN_SCHOOL_CHOICES = [
        (FRESHMAN, 'Freshman'),
        (SOPHOMORE, 'Sophomore'),
        (JUNIOR, 'Junior'),
        (SENIOR, 'Senior'),
        (GRADUATE, 'Graduate'),
    ]
    year_in_school = models.CharField(
        max_length=2,
        choices=YEAR_IN_SCHOOL_CHOICES,
        default=FRESHMAN,
    )

在Rails中实现相同目标的方法是什么?就我而言,我想要一个activity可以包含值字段to-read, reading, read, not-finished, reading_again提前致谢

杜莫兹(ThéoDumez)

您好,您可以在模型中添加验证:

class Student < ApplicationRecord
  validates :activity, inclusion: { in: ["to-read", "reading", "read", "not-finished", "reading_again"],
    message: "%{value} is not a valid activity" }
end

选择必须放在表单视图中,如下所示:

<%= form_with model: @student, class: "" do |f| %>
  <%= select_tag(:activity,
    options_for_select(["to-read", "reading", "read", "not-finished", "reading_again"], @student.activity) %>
  <%= f.submit "Create" %>
<% end %>

在数据库模式中,您应该具有:

create_table "students", force: :cascade do |t|
  t.string "activity"
  t.datetime "created_at", precision: 6, null: false
  t.datetime "updated_at", precision: 6, null: false
end

不要忘记:如果您的数据库架构不正确,则必须进行迁移,而不能直接编辑您的schema.rbhttps : //guides.rubyonrails.org/active_record_migrations.html

希望这个问题的答案

最好,Théo

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

延迟加载模型字段的选择

来自分类Dev

延迟加载模型字段的选择

来自分类Dev

Rails - 从关联模型的下拉列表中选择哈希元素,将元素分配给字段

来自分类Dev

Rails不保存模型字段

来自分类Dev

带字段的Rails ElasticSearch模型

来自分类Dev

Django模型选择字段-取决于其他字段的选择

来自分类Dev

忽略要在雄辩模型中选择的字段

来自分类Dev

使用骨干模型填充选择字段的选项

来自分类Dev

忽略要在雄辩模型中选择的字段

来自分类Dev

创建具有选择字段的模型实例

来自分类Dev

从枚举模型设置Rails表单隐藏字段

来自分类Dev

在Ruby on Rails中查看ActiveRecord模型字段

来自分类Dev

回顾我在Rails模型中的字段

来自分类Dev

Rails 4.1嵌套模型表单字段

来自分类Dev

选择在Rails中具有属性或模型

来自分类Dev

Rails模型选择日期格式

来自分类Dev

在Rails的选择字段中显示键,值

来自分类Dev

Django模型选择选择,其中填充了其他模型实例中的字段

来自分类Dev

以Django选择的形式在``模型选择''字段中列出各种模型属性

来自分类Dev

Rails表单:从先前选择的字段更改表单字段

来自分类Dev

如何使用Active Admin,Rails 5.0.1中的Paperclip在带有表单选择字段的两个模型之间创建关联

来自分类Dev

为模型字段定义的选择未强制执行?

来自分类Dev

选择后,输入字段显示模型值而不是标签

来自分类Dev

根据用户选择哪些字段以模型形式显示

来自分类Dev

Django模型中多对多字段的过滤器选择

来自分类Dev

Django模型形式如何输出从布尔字段中选择是/否

来自分类Dev

不能有多个具有相同选择的模型字段

来自分类Dev

选择在Peewee模型中存储Raw HTML的字段

来自分类Dev

将Django模型字段选择转换为JSON

Related 相关文章

  1. 1

    延迟加载模型字段的选择

  2. 2

    延迟加载模型字段的选择

  3. 3

    Rails - 从关联模型的下拉列表中选择哈希元素,将元素分配给字段

  4. 4

    Rails不保存模型字段

  5. 5

    带字段的Rails ElasticSearch模型

  6. 6

    Django模型选择字段-取决于其他字段的选择

  7. 7

    忽略要在雄辩模型中选择的字段

  8. 8

    使用骨干模型填充选择字段的选项

  9. 9

    忽略要在雄辩模型中选择的字段

  10. 10

    创建具有选择字段的模型实例

  11. 11

    从枚举模型设置Rails表单隐藏字段

  12. 12

    在Ruby on Rails中查看ActiveRecord模型字段

  13. 13

    回顾我在Rails模型中的字段

  14. 14

    Rails 4.1嵌套模型表单字段

  15. 15

    选择在Rails中具有属性或模型

  16. 16

    Rails模型选择日期格式

  17. 17

    在Rails的选择字段中显示键,值

  18. 18

    Django模型选择选择,其中填充了其他模型实例中的字段

  19. 19

    以Django选择的形式在``模型选择''字段中列出各种模型属性

  20. 20

    Rails表单:从先前选择的字段更改表单字段

  21. 21

    如何使用Active Admin,Rails 5.0.1中的Paperclip在带有表单选择字段的两个模型之间创建关联

  22. 22

    为模型字段定义的选择未强制执行?

  23. 23

    选择后,输入字段显示模型值而不是标签

  24. 24

    根据用户选择哪些字段以模型形式显示

  25. 25

    Django模型中多对多字段的过滤器选择

  26. 26

    Django模型形式如何输出从布尔字段中选择是/否

  27. 27

    不能有多个具有相同选择的模型字段

  28. 28

    选择在Peewee模型中存储Raw HTML的字段

  29. 29

    将Django模型字段选择转换为JSON

热门标签

归档