What is Ruby's double-colon `::`?

后端 未结 10 2124
南笙
南笙 2020-11-22 10:09

What is this double-colon ::? E.g. Foo::Bar.

I found a definition:

The :: is a unary operator that all

10条回答
  •  一个人的身影
    2020-11-22 10:51

    Ruby on rails uses :: for namespace resolution.

    class User < ActiveRecord::Base
    
      VIDEOS_COUNT = 10
      Languages = { "English" => "en", "Spanish" => "es", "Mandarin Chinese" => "cn"}
    
    end
    

    To use it :

    User::VIDEOS_COUNT
    User::Languages
    User::Languages.values_at("Spanish") => "en"
    

    Also, other usage is : When using nested routes

    OmniauthCallbacksController is defined under users.

    And routed as:

    devise_for :users, controllers: {omniauth_callbacks: "users/omniauth_callbacks"}
    
    
    class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
    
    end
    

提交回复
热议问题