diff options
Diffstat (limited to 'app/models/snippet.rb')
-rw-r--r-- | app/models/snippet.rb | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/app/models/snippet.rb b/app/models/snippet.rb index 5412492..a55b732 100644 --- a/app/models/snippet.rb +++ b/app/models/snippet.rb @@ -1,4 +1,14 @@ class Snippet < ApplicationRecord - has_many :result - has_many :compiler + has_many :results + + validates :code, length: { maximum: 65535, tokenizer: :bytes.to_proc } + + def compilers + Compiler.where(language: language) + end + + def results_all + r = results.map { |r| [r.compiler_id, r] }.to_h + compilers.map { |c| [r[c.id], c] } + end end |