Nasıl paylaşılan ci tabanı ile birden fazla proje işlemek size kurulum CodeIgniter do?

2 Cevap php

Ben Codeigniter için "uygulamaları" klasörü altında proje klasörleri koyabilirsiniz iddia çeşitli CI uygulama örneklerini gördüm.

Ancak ben söz verdiğim gibi bu işi görmek mümkün olmamıştır ettik.

İşte ben yapmak istiyorum ne yaptım ve ne - belki yardımcı olabilir. Tartışmanın aşkına benim belge kök edilir / www / (Bu değil, ama en basitlik aşkına için kullanalım)

I / www / corelib / CodeIgniter'daki CodeIgniter çekirdeğini koyduk

I / www / ci_system yılında CodeIgniter sistem klasörü koydum

I / www / uygulamalarda uygulamalar dizin koyduk

I / www / aa benim "giriş noktası" koyduk

"DataEntry" ve "cPanel": Şimdi ben iki proje var diyelim

Fikirler Ben gidebilirsiniz olduğunu

h ** p :/ / etkialanım / aa / DataEntry / / DataEntry uygulama için ve

h ** p :/ / etkialanım / aa / cpanel / / cpanel uygulama için.

Ben böyle DataEntry ve cpanel dizinleri düzenlemek IF:

/ Www / uygulamalar / kontrolörleri / DataEntry

/ Www / uygulamalar / kontrolörleri / cpanel

/ Www / uygulamalar / modelleri / DataEntry

/ Www / uygulamalar / modelleri / cpanel

/ Www / uygulamalar / views / DataEntry

/ Www / uygulamalar / views / cpanel

Ben bu cezayı işe alabilirsiniz. Ancak, ne ben yapmak istiyorum ben şu olurdu böylece kontrolörü olarak aynı seviyede modeli ve görünümü tutmak:

/ Www / uygulamalar / DataEntry / kontrolörleri

/ Www / uygulamalar / DataEntry / modelleri

/ Www / uygulamalar / DataEntry / izleme

/ Www / uygulamalar / cpanel / kontrolörleri

/ Www / uygulamalar / cpanel / modelleri

/ Www / uygulamalar / cpanel / izleme

Bu işe görünmüyor.

Herhangi bir öneriniz?

-CF

2 Cevap

- Tamam istediğiniz gibi bu çalışma var. Ben yorum bölümünde daha geniş bir "nasıl yapılır" ve sağlayacak bir link yazmaya çalışacağım.

. Artık CI gerektirdiğinden daha htaccess değiştirmek yoktu - Ben bu konuda mutlu oldu. Benim giriş dizini şöyle:

/ Aa / index.php

İki anahtar parçalarıdır Buradasınız:

list($blank, $webpath, $app) = explode('/', $_SERVER['REQUEST_URI']);
        $application_folder = $_SERVER['DOCUMENT_ROOT]."/applications/$app";

Bu, tek bir index.php tüm uygulamaları ele verir.

Ben eksik kısmı appName şimdi de birincil denetleyici veya kontrolörleri içinde bir dizin olmalıdır olmasıdır. (Ben gerçek bir sorun Ben aslında görüyordum ne fark beni engelleyen yapılandırmaları ve yolları vardı o kadar hack olduğunu oldu:. Bazen temiz başlangıç ​​zorunludur)

Her uygulama ("DataEntry" ve "cpanel") uygun $ application_folder değişken tanımlar kendi ana index.php dosyası var mı?

Ayrıca - ve ben dokümanlar okudum eminim - ama CodeIgniter's documentation aşağıdaki gibi / uygulamalar dizini (veya dizinleri, sizin durumunuzda) / sistem dizini altında var gerektiğini belirtiyor:

system/application/foo/
system/application/foo/config/
system/application/foo/controllers/
system/application/foo/errors/
system/application/foo/libraries/
system/application/foo/models/
system/application/foo/views/
system/application/bar/
system/application/bar/config/
system/application/bar/controllers/
system/application/bar/errors/
system/application/bar/libraries/
system/application/bar/models/
system/application/bar/views/