Problem w/ routing constraints

Hello,
   I am having a strange problem w/ rails 3 routing constraints.   I
have this custom class w/ a self.matches? method as such:

class PersonalizedDomain

  def self.matches?(request)
    Rails.logger.info("self.matches? NEVER CALLED!!!!")
  end

Open in new window



and in routes I use the custom Class like this:

require 'personalized_domain' #resides in lib

  constraints(PersonalizedDomain) do

     Rails.logger.info("constraints block ENTERED")
      root :to => "projects#show"
  end

Open in new window



and in application.rb, I load my lib paths:

config.autoload_paths += %W(#{config.root}/lib)

Open in new window



The self.matches?(request) method never gets called and I don't
understand why?
clemcrockAsked:
Who is Participating?
 
clemcrockConnect With a Mentor Author Commented:
SOLUTION:  Here's an update - I did figure out why my custom constraint wasn't working correctly and here's the changes I made:

In PersonalizedDomain I changed the self.matches? method from a class method to an instance method as such:

# lib/personalized_domain.rb
class PersonalizedDomain
  def matches?(request)
    case request.host
    when "www.#{APP_CONFIG[:domain]}", "#{APP_CONFIG[:domain]}", nil
      false
    else
      true
    end
  end
end

Open in new window


and in routes I did this:

constraints(PersonalizedDomain.new) do
      resources :posts
      resources :personalized
  end

Open in new window

0
 
James MurrellProduct SpecialistCommented:
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.