CARVIEW |
Select Language
HTTP/2 302
server: nginx
date: Sat, 02 Aug 2025 21:12:31 GMT
content-type: text/plain; charset=utf-8
content-length: 0
x-archive-redirect-reason: found capture at 20090209233831
location: https://web.archive.org/web/20090209233831/https://github.com/tekkub/engines/tree/
server-timing: captures_list;dur=1.690676, exclusion.robots;dur=0.049004, exclusion.robots.policy;dur=0.021648, esindex;dur=0.027807, cdx.remote;dur=51.132940, LoadShardBlock;dur=335.679816, PetaboxLoader3.datanode;dur=110.257283, PetaboxLoader3.resolve;dur=151.121709
x-app-server: wwwb-app223
x-ts: 302
x-tr: 449
server-timing: TR;dur=0,Tw;dur=0,Tc;dur=0
set-cookie: wb-p-SERVER=wwwb-app223; path=/
x-location: All
x-rl: 0
x-na: 0
x-page-cache: MISS
server-timing: MISS
x-nid: DigitalOcean
referrer-policy: no-referrer-when-downgrade
permissions-policy: interest-cohort=()
HTTP/2 301
server: nginx
date: Sat, 02 Aug 2025 21:12:32 GMT
content-type: text/html; charset=utf-8
content-length: 110
x-archive-orig-server: nginx/0.6.31
x-archive-orig-date: Mon, 09 Feb 2009 23:38:31 GMT
x-archive-orig-connection: close
x-archive-orig-status: 301 Moved Permanently
location: https://web.archive.org/web/20090209233831/https://github.com/tekkub/engines/tree/master
x-archive-orig-x-runtime: 21ms
x-archive-orig-cache-control: no-cache
x-archive-orig-content-length: 110
cache-control: max-age=1800
memento-datetime: Mon, 09 Feb 2009 23:38:31 GMT
link: ; rel="original", ; rel="timemap"; type="application/link-format", ; rel="timegate", ; rel="first memento"; datetime="Tue, 18 Nov 2008 08:27:52 GMT", ; rel="prev memento"; datetime="Mon, 09 Feb 2009 20:06:43 GMT", ; rel="memento"; datetime="Mon, 09 Feb 2009 23:38:31 GMT", ; rel="last memento"; datetime="Mon, 09 Feb 2009 23:38:31 GMT"
content-security-policy: default-src 'self' 'unsafe-eval' 'unsafe-inline' data: blob: archive.org web.archive.org web-static.archive.org wayback-api.archive.org athena.archive.org analytics.archive.org pragma.archivelab.org wwwb-events.archive.org
x-archive-src: 52_8_20090209223331_crawl100-c/52_8_20090209233224_crawl101.arc.gz
server-timing: captures_list;dur=0.799667, exclusion.robots;dur=0.026776, exclusion.robots.policy;dur=0.013141, esindex;dur=0.017548, cdx.remote;dur=15.198251, LoadShardBlock;dur=354.865130, PetaboxLoader3.datanode;dur=241.319837, PetaboxLoader3.resolve;dur=285.998411, load_resource;dur=189.881578
x-app-server: wwwb-app223
x-ts: 301
x-tr: 588
server-timing: TR;dur=0,Tw;dur=0,Tc;dur=1
x-location: All
x-rl: 0
x-na: 0
x-page-cache: MISS
server-timing: MISS
x-nid: DigitalOcean
referrer-policy: no-referrer-when-downgrade
permissions-policy: interest-cohort=()
HTTP/2 302
server: nginx
date: Sat, 02 Aug 2025 21:12:32 GMT
content-type: text/plain; charset=utf-8
content-length: 0
x-archive-redirect-reason: found capture at 20090209200643
location: https://web.archive.org/web/20090209200643/https://github.com/tekkub/engines/tree/master
server-timing: captures_list;dur=0.681872, exclusion.robots;dur=0.026617, exclusion.robots.policy;dur=0.012904, esindex;dur=0.014622, cdx.remote;dur=39.190384, LoadShardBlock;dur=81.798818, PetaboxLoader3.datanode;dur=68.023065
x-app-server: wwwb-app223
x-ts: 302
x-tr: 145
server-timing: TR;dur=0,Tw;dur=0,Tc;dur=0
x-location: All
x-rl: 0
x-na: 0
x-page-cache: MISS
server-timing: MISS
x-nid: DigitalOcean
referrer-policy: no-referrer-when-downgrade
permissions-policy: interest-cohort=()
HTTP/2 200
server: nginx
date: Sat, 02 Aug 2025 21:12:33 GMT
content-type: text/html; charset=utf-8
x-archive-orig-server: nginx/0.6.26
x-archive-orig-date: Mon, 09 Feb 2009 20:06:43 GMT
x-archive-orig-connection: close
x-archive-orig-status: 200 OK
x-archive-orig-x-runtime: 1107ms
x-archive-orig-etag: "6aa3da33759a93d8d03fc678f901acb9"
x-archive-orig-cache-control: private, max-age=0, must-revalidate
x-archive-orig-content-length: 24969
x-archive-guessed-content-type: text/html
x-archive-guessed-charset: utf-8
memento-datetime: Mon, 09 Feb 2009 20:06:43 GMT
link: ; rel="original", ; rel="timemap"; type="application/link-format", ; rel="timegate", ; rel="first memento"; datetime="Tue, 18 Nov 2008 08:28:07 GMT", ; rel="prev memento"; datetime="Tue, 18 Nov 2008 15:27:25 GMT", ; rel="memento"; datetime="Mon, 09 Feb 2009 20:06:43 GMT", ; rel="last memento"; datetime="Mon, 09 Feb 2009 20:06:43 GMT"
content-security-policy: default-src 'self' 'unsafe-eval' 'unsafe-inline' data: blob: archive.org web.archive.org web-static.archive.org wayback-api.archive.org athena.archive.org analytics.archive.org pragma.archivelab.org wwwb-events.archive.org
x-archive-src: 52_8_20090209174455_crawl101-c/52_8_20090209200453_crawl101.arc.gz
server-timing: captures_list;dur=0.589883, exclusion.robots;dur=0.023415, exclusion.robots.policy;dur=0.012228, esindex;dur=0.013303, cdx.remote;dur=195.955552, LoadShardBlock;dur=437.313009, PetaboxLoader3.datanode;dur=186.361292, PetaboxLoader3.resolve;dur=418.543139, load_resource;dur=260.280266
x-app-server: wwwb-app223
x-ts: 200
x-tr: 944
server-timing: TR;dur=0,Tw;dur=0,Tc;dur=0
x-location: All
x-rl: 0
x-na: 0
x-page-cache: MISS
server-timing: MISS
x-nid: DigitalOcean
referrer-policy: no-referrer-when-downgrade
permissions-policy: interest-cohort=()
content-encoding: gzip
tekkub's engines at master - GitHub
This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (

This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (

Fork of lazyatom/engines | |
Description: | The Rails Engines plugin |
Homepage: | https://rails-engines.org |
Clone URL: |
git://github.com/tekkub/engines.git
Give this clone URL to anyone.
git clone git://github.com/tekkub/engines.git
|
engines /
The engines plugin enhances Rails' own plugin framework, making it simple to share controllers, helpers, models, public assets, routes and migrations in plugins. For more information, see https://rails-engines.org = Using the plugin With engines 1.2, no extra configuration in environment.rb is required. Having the plugin installed will automatically enable sharing of code within <tt>plugin/app/</tt> directories. Developers should be aware that the <tt>config.plugins</tt> parameter can be used to control plugin load order, if this is important for your application. === config.plugins With Rails 1.2, the <tt>config.plugins</tt> list can be used to specify the order in which plugins are loaded. It's recommended (although not required) that you load the engines plugin first, and any other plugins later. The engines plugin enhances Rails' processing of <tt>config.plugins</tt> for occasions where you only care about the order of a small selection of your application's plugins. For instance, if you want to load +engines+ first, and anything else afterwards, then config.plugins = ["engines", "*"] will ensure that engines is loaded first, and everything else (in whatever order Rails chooses) afterwards. == Better plugins In addition to the regular set of plugin-supported files (lib, init.rb, tasks, generators, tests), plugins can carry the following when the engines plugin is also installed. === Controllers, Helpers, and Views Include these files in an <tt>app</tt> directory just like you would in a normal Rails application. If you need to override a method, view or partial, create the corresponding file in your main <tt>app</tt> directory and it will be used instead. * Controllers & Helpers: See Engines::RailsExtensions::Dependencies for more information. * Views: See Engines::RailsExtensions::Templates for more information. === Models Model code can similarly be placed in an <tt>app/models/</tt> directory. Unfortunately, it's not possible to automatically override methods within a model; if your application needs to change the way a model behaves, consider creating a subclass, or replacing the model entirely within your application's <tt>app/models/</tt> directory. See Engines::RailsExtensions::Dependencies for more information. IMPORTANT NOTE: when you load code from within plugins, it is typically not handled well by Rails in terms of unloading and reloading changes. Look here for more information - https://rails-engines.org/development/common-issues-when-overloading-code-from-plugins/ === Routes Include your route declarations in a <tt>routes.rb</tt> file at the root of your plugins, e.g.: connect "/my/url", :controller => "some_controller" my_named_route "do_stuff", :controller => "blah", :action => "stuff" # etc. You can then load these files into your application by declaring their inclusion in the application's <tt>config/routes.rb</tt>: map.from_plugin :plugin_name See Engines::RailsExtensions::Routing for more information. === Migrations Migrations record the changes in your database as your application evolves. With engines 1.2, migrations from plugins can also join in this evolution as first-class entities. To add migrations to a plugin, include a <tt>db/migrate/</tt> folder and add migrations there as normal. These migrations can then be integrated into the main flow of database evolution by running the plugin_migration generator: script/generate plugin_migration This will produce a migration in your application. Running this migration (via <tt>rake db:migrate</tt>, as normal) will migrate the database according to the latest migrations in each plugin. See Engines::RailsExtensions::Migrations for more information. === More powerful Rake tasks The engines plugin enhances and adds to the suite of default rake tasks for working with plugins. The <tt>doc:plugins</tt> task now includes controllers, helpers and models under <tt>app</tt>, and anything other code found under the plugin's <tt>code_paths</tt> attribute. New testing tasks have been added to run unit, functional and integration tests from plugins, whilst making it easier to load fixtures from plugins. See Engines::Testing for more details about testing, and run rake -T to see the set of rake tasks available.
This feature is coming soon. Sit tight!