diff options
| author | Xinhui | 2016-11-09 11:47:02 +0100 |
|---|---|---|
| committer | Xinhui | 2016-11-09 11:47:17 +0100 |
| commit | 2ca92317d4dc06992e93b39202fbc3231c8cac4d (patch) | |
| tree | d8ec68c092d48889234127e18d8cec6f36b32259 /app/models | |
| parent | e5bdfe49e120f6e703e63d05fad9e53ea499b58e (diff) | |
| download | chouette-core-2ca92317d4dc06992e93b39202fbc3231c8cac4d.tar.bz2 | |
Refactoring MyWorkbenchScopes with initial_scope
Refs #1787
Diffstat (limited to 'app/models')
| -rw-r--r-- | app/models/referential.rb | 6 | ||||
| -rw-r--r-- | app/models/workbench.rb | 2 |
2 files changed, 6 insertions, 2 deletions
diff --git a/app/models/referential.rb b/app/models/referential.rb index 1e2c2acc3..8b8df3294 100644 --- a/app/models/referential.rb +++ b/app/models/referential.rb @@ -30,7 +30,7 @@ class Referential < ActiveRecord::Base validates_presence_of :line_referential belongs_to :created_from, class_name: 'Referential' - has_many :lines, through: :line_referential + has_many :associated_lines, through: :line_referential, source: :lines has_many :companies, through: :line_referential has_many :group_of_lines, through: :line_referential has_many :networks, through: :line_referential @@ -43,6 +43,10 @@ class Referential < ActiveRecord::Base has_many :stop_areas, through: :stop_area_referential belongs_to :workbench + def lines + workbench ? workbench.lines : associated_lines + end + def slug_excluded_values if ! slug.nil? if slug.start_with? "pg_" diff --git a/app/models/workbench.rb b/app/models/workbench.rb index f02c6a5a1..a83fea70d 100644 --- a/app/models/workbench.rb +++ b/app/models/workbench.rb @@ -3,7 +3,7 @@ class Workbench < ActiveRecord::Base belongs_to :line_referential belongs_to :stop_area_referential - has_many :lines, -> (workbench) { Stif::MyWorkbenchScopes.new(workbench).line_scope }, through: :line_referential + has_many :lines, -> (workbench) { Stif::MyWorkbenchScopes.new(workbench).line_scope(self) }, through: :line_referential has_many :networks, through: :line_referential has_many :companies, through: :line_referential has_many :group_of_lines, through: :line_referential |
