ruby或rails是否提供了按指定顺序对字符串进行排序的方法?假设我有以下优先级“严重、高、中、低”。
这些优先级不会频繁更改(如果有更改的话)。我有一个带有优先级列的任务模型:
tasks
- id (integer)
- name (string)
- priority (string)
我想得到一个按优先级排序的所有任务的数组。由于逻辑顺序不遵循字母顺序,因此不可能简单地按优先级列进行排序:
Task.all(:order => :priority)
我所做的是创建了一个优先级模型,并定义了关联: Task belongs_to Priority。在priority表中,我为每个优先级名称分配了一个值,并按该值排序。有没有更好的方法来做这件事?我不希望有一个优先级表,而是声明一个优先级常量(作为散列),或者在tasks表中简单地将优先级指定为字符串。
https://stackoverflow.com/questions/1353922
复制相似问题