[{"title":"( 74 个子文件 56KB ) ahoy:用于Rails的简单,强大的第一方分析-源码","children":[{"title":"ahoy-master","children":[{"title":".gitignore <span style='color:#111;'> 176B </span>","children":null,"spread":false},{"title":"app","children":[{"title":"jobs","children":[{"title":"ahoy","children":[{"title":"geocode_v2_job.rb <span style='color:#111;'> 767B </span>","children":null,"spread":false},{"title":"geocode_job.rb <span style='color:#111;'> 226B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"controllers","children":[{"title":"ahoy","children":[{"title":"base_controller.rb <span style='color:#111;'> 1.03KB </span>","children":null,"spread":false},{"title":"events_controller.rb <span style='color:#111;'> 997B </span>","children":null,"spread":false},{"title":"visits_controller.rb <span style='color:#111;'> 314B </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true},{"title":"ahoy_matey.gemspec <span style='color:#111;'> 1.19KB </span>","children":null,"spread":false},{"title":"gemfiles","children":[{"title":"rails50.gemfile <span style='color:#111;'> 101B </span>","children":null,"spread":false},{"title":"rails51.gemfile <span style='color:#111;'> 75B </span>","children":null,"spread":false},{"title":"rails52.gemfile <span style='color:#111;'> 75B </span>","children":null,"spread":false},{"title":"rails61.gemfile <span style='color:#111;'> 79B </span>","children":null,"spread":false}],"spread":true},{"title":"CONTRIBUTING.md <span style='color:#111;'> 1.32KB </span>","children":null,"spread":false},{"title":"CHANGELOG.md <span style='color:#111;'> 6.79KB </span>","children":null,"spread":false},{"title":"LICENSE.txt <span style='color:#111;'> 1.05KB </span>","children":null,"spread":false},{"title":".github","children":[{"title":"ISSUE_TEMPLATE.md <span style='color:#111;'> 141B </span>","children":null,"spread":false},{"title":"workflows","children":[{"title":"build.yml <span style='color:#111;'> 1.04KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"README.md <span style='color:#111;'> 17.16KB </span>","children":null,"spread":false},{"title":"vendor","children":[{"title":"assets","children":[{"title":"javascripts","children":[{"title":"ahoy.js <span style='color:#111;'> 15.38KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true},{"title":"config","children":[{"title":"routes.rb <span style='color:#111;'> 224B </span>","children":null,"spread":false}],"spread":true},{"title":"lib","children":[{"title":"ahoy","children":[{"title":"controller.rb <span style='color:#111;'> 1.14KB </span>","children":null,"spread":false},{"title":"model.rb <span style='color:#111;'> 366B </span>","children":null,"spread":false},{"title":"warden.rb <span style='color:#111;'> 190B </span>","children":null,"spread":false},{"title":"utils.rb <span style='color:#111;'> 167B </span>","children":null,"spread":false},{"title":"engine.rb <span style='color:#111;'> 860B </span>","children":null,"spread":false},{"title":"tracker.rb <span style='color:#111;'> 6.96KB </span>","children":null,"spread":false},{"title":"database_store.rb <span style='color:#111;'> 2.58KB </span>","children":null,"spread":false},{"title":"helper.rb <span style='color:#111;'> 1.08KB </span>","children":null,"spread":false},{"title":"version.rb <span style='color:#111;'> 36B </span>","children":null,"spread":false},{"title":"base_store.rb <span style='color:#111;'> 2.02KB </span>","children":null,"spread":false},{"title":"query_methods.rb <span style='color:#111;'> 3.97KB </span>","children":null,"spread":false},{"title":"visit_properties.rb <span style='color:#111;'> 3.18KB </span>","children":null,"spread":false}],"spread":false},{"title":"generators","children":[{"title":"ahoy","children":[{"title":"base_generator.rb <span style='color:#111;'> 290B </span>","children":null,"spread":false},{"title":"templates","children":[{"title":"active_record_migration.rb.tt <span style='color:#111;'> 1.48KB </span>","children":null,"spread":false},{"title":"mongoid_event_model.rb.tt <span style='color:#111;'> 276B </span>","children":null,"spread":false},{"title":"database_store_initializer.rb.tt <span style='color:#111;'> 100B </span>","children":null,"spread":false},{"title":"base_store_initializer.rb.tt <span style='color:#111;'> 265B </span>","children":null,"spread":false},{"title":"active_record_event_model.rb.tt <span style='color:#111;'> 236B </span>","children":null,"spread":false},{"title":"active_record_visit_model.rb.tt <span style='color:#111;'> 158B </span>","children":null,"spread":false},{"title":"mongoid_visit_model.rb.tt <span style='color:#111;'> 1.15KB </span>","children":null,"spread":false}],"spread":false},{"title":"mongoid_generator.rb <span style='color:#111;'> 515B </span>","children":null,"spread":false},{"title":"activerecord_generator.rb <span style='color:#111;'> 1.48KB </span>","children":null,"spread":false},{"title":"install_generator.rb <span style='color:#111;'> 894B </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":"ahoy.rb <span style='color:#111;'> 2.85KB </span>","children":null,"spread":false},{"title":"ahoy_matey.rb <span style='color:#111;'> 15B </span>","children":null,"spread":false}],"spread":true},{"title":"Gemfile <span style='color:#111;'> 114B </span>","children":null,"spread":false},{"title":"docs","children":[{"title":"Ahoy-2-Upgrade.md <span style='color:#111;'> 3.12KB </span>","children":null,"spread":false},{"title":"Data-Store-Examples.md <span style='color:#111;'> 3.98KB </span>","children":null,"spread":false}],"spread":false},{"title":"Rakefile <span style='color:#111;'> 356B </span>","children":null,"spread":false},{"title":"test","children":[{"title":"api_test.rb <span style='color:#111;'> 2.75KB </span>","children":null,"spread":false},{"title":"controller_test.rb <span style='color:#111;'> 8.68KB </span>","children":null,"spread":false},{"title":"query_methods","children":[{"title":"mysql_text_test.rb <span style='color:#111;'> 209B </span>","children":null,"spread":false},{"title":"postgresql_jsonb_test.rb <span style='color:#111;'> 202B </span>","children":null,"spread":false},{"title":"mysql_json_test.rb <span style='color:#111;'> 239B </span>","children":null,"spread":false},{"title":"postgresql_text_test.rb <span style='color:#111;'> 229B </span>","children":null,"spread":false},{"title":"postgresql_json_test.rb <span style='color:#111;'> 199B </span>","children":null,"spread":false},{"title":"mongoid_test.rb <span style='color:#111;'> 251B </span>","children":null,"spread":false},{"title":"postgresql_hstore_test.rb <span style='color:#111;'> 205B </span>","children":null,"spread":false}],"spread":false},{"title":"support","children":[{"title":"mongoid.rb <span style='color:#111;'> 175B </span>","children":null,"spread":false},{"title":"mysql.rb <span style='color:#111;'> 449B </span>","children":null,"spread":false},{"title":"query_methods_test.rb <span style='color:#111;'> 3.58KB </span>","children":null,"spread":false},{"title":"postgresql.rb <span style='color:#111;'> 778B </span>","children":null,"spread":false}],"spread":false},{"title":"tracker_test.rb <span style='color:#111;'> 328B </span>","children":null,"spread":false},{"title":"test_helper.rb <span style='color:#111;'> 1.19KB </span>","children":null,"spread":false},{"title":"internal","children":[{"title":"app","children":[{"title":"models","children":[{"title":"product.rb <span style='color:#111;'> 177B </span>","children":null,"spread":false},{"title":"ahoy","children":[{"title":"event.rb <span style='color:#111;'> 193B </span>","children":null,"spread":false},{"title":"visit.rb <span style='color:#111;'> 158B </span>","children":null,"spread":false}],"spread":false},{"title":"user.rb <span style='color:#111;'> 35B </span>","children":null,"spread":false},{"title":"application_record.rb <span style='color:#111;'> 78B </span>","children":null,"spread":false}],"spread":false},{"title":"controllers","children":[{"title":"application_controller.rb <span style='color:#111;'> 192B </span>","children":null,"spread":false},{"title":"products_controller.rb <span style='color:#111;'> 510B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"db","children":[{"title":"schema.rb <span style='color:#111;'> 1.22KB </span>","children":null,"spread":false}],"spread":false},{"title":"config","children":[{"title":"database.yml <span style='color:#111;'> 64B </span>","children":null,"spread":false},{"title":"routes.rb <span style='color:#111;'> 198B </span>","children":null,"spread":false},{"title":"initializers","children":[{"title":"ahoy.rb <span style='color:#111;'> 103B </span>","children":null,"spread":false}],"spread":false}],"spread":false}],"spread":false}],"spread":false}],"spread":false}],"spread":true}]