Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8003581
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 4, 20262026-06-04T16:41:06+00:00 2026-06-04T16:41:06+00:00

I have two models Business and Representative When a business or representative signs up

  • 0

I have two models

Business and Representative

When a business or representative signs up they are shown a list of options for “How did you hear about us?”

The discovery ways are dynamic, so the admin can add the ways in which a business or representative can discover us. For example the admin may add options ‘Via Google’, ‘Through a Friend’, ‘Through another Representative’ etc.. Each discovery type can either be for a business or representative or both.

How should I model the discovery_type model , What relationship it should have, I was thinking some thing along the following lines

Schema : 
table: discovery_types
name: string
type: string(can be one of 'business','representative', 'both')

class DiscoveryType< ActiveRecord::Base
  has_many :businesses
  has_many :representatives
end

class Business< ActiveRecord::Base
  belongs_to :discovery_type
end

class Representative< ActiveRecord::Base
  belongs_to :discovery_type
end

I am just not confident of this above scheme. so can anyone point out any issues and may be suggest a better way out..

Also should I add an index on any of the columns ?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-04T16:41:07+00:00Added an answer on June 4, 2026 at 4:41 pm

    Edited: Not Polymorphic Association, you’re right – that’s the opposite relationship.

    This should work for the relationship you want –

    class DiscoveryType< ActiveRecord::Base
      has_many :discoveries
    end
    
    class Discovery < ActiveRecord::Base
      belongs_to :discovery_type
    end
    
    class Business < Discovery
    end
    
    class Representative < Discovery
    end
    

    If you leave the type column in discovery_types Rails should automatically use it

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have two models like this: class OptionsAndFeatures(models.Model): options = models.TextField(blank=True, null=True) entertainment =
I have associated two models Businesses and Ratings . A business can be rated
I have table that describes association of two other business models. Example: Construction Table
I have two models in my Django application, for the purposes of storing search
I have two models, A and B, and one light, L. I would like
I have two models, user and group. I also have a joining table groups_users.
I have two models, say Product and Bundle. products table is related to product_prices
I have two models, Image and Tag . Each Image object can have more
I have two models: class User end class Message belongs_to :sender, :class_name=> 'User' belongs_to
I have two models, Design and Profile . Profile is hooked up in settings.py

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.