Konsol Komutları
"ZN Framework 2011 senesinden beri geliştirilmeye devam etmektedir."
İşletim sistemlerinde terminal üzerinden komut çalıştırmak için geliştirilmiştir.
# Kurulum
ZN dağıtımları için kurulum gerekmez.
↓ composer require znframework/package-console
# Söz Dizimi
php | zerocore | [project-name] | command | [parameters] |
Php yolu. | Kök dizindeki zerocore dosyasının yolu. | ZN FE ve ZN OE dağıtımlarında Projects/ dizini içerisinde yer alan ön tanımlı proje dizini (Frontend) dışında farklı bir proje üzerinde komut çalıştırmanız gerektiği durumda kullanır. | Komutlardan herhangi biri. | Varsa parametreler. |
Aşağıda sistem genelinde ki tüm yapılara ulaşabilmeyi sağlayan komutlar yer almaktadır.
php zerocore [project-name ProjectName] run-command command:method p1 p2 p 3 ... pN
php zerocore [project-name ProjectName] run-uri controller/function/p1/p2 ... /pN
php zerocore [project-name ProjectName] run-controller controller/function
php zerocore [project-name ProjectName] run-class controller:function p1 p2 ... pN
php zerocore [project-name ProjectName] run-model model:function p1 p2 p3 ... pN
php zerocore [project-name ProjectName] run-function function p1 p2 p 3 ... pN
Aşağıda tema entegrasyon işlemini başlatmak için kullanılan komutlar yer alır.
Aşağıda ZN Framework sürümün yükseltme komutları yer almaktadır.
Aşağıdaki komut son yapılan upgrade işlemini geri almak için kullanılır.
Aşağıda Crontab ile zamanlanmış görev yönetimi komutları yer almaktadır.
php zerocore [project-name ProjectName] run-cron controller/method time1 value1 ...
php zerocore [project-name ProjectName] cron-list
php zerocore [project-name ProjectName] remove-cron cronID
Aşağıda generate kütüphanesinin yeteneklerini kullanan komutlar yer almaktadır.
php zerocore create-project project name
php zerocore delete-project project name
php zerocore [project-name ProjectName] create-controller controller name
php zerocore [project-name ProjectName] delete-controller controller name
php zerocore [project-name ProjectName] create-model model name
php zerocore [project-name ProjectName] create-grand-model model name
php zerocore [project-name ProjectName] delete-model model name
php zerocore [project-name ProjectName] create-grand-vision [database name]
php zerocore [project-name ProjectName] delete-grand-vision [database name]
php zerocore [project-name ProjectName] generate-databases
php zerocore [project-name ProjectName] clean-cache
Yukarıdakı kullanımların dışında kalan standart terminal komutlarını kullanabilirsiniz.
composer require monolog/monolog
# run-command
Konsol kullanarak Projects/ProjectDirectory/Commands/ dizini altındaki komut sınıflarını çalıştırmak için kullanılır. Komut dosyalar terminal üzerinden çalıştırılabileceği gibi Async:: sınıf ile kontrolcüler üzerinden de tetiklenebilir.
Yukarıda belirtilen istisnalar dışında tüm sistem, kullanıcı ve composer kütüphanelerine doğrudan erişim sağlanabilir.
<?php namespace Project\Commands;
use Email;
class ExampleCommand extends Command
{
public function run($to)
{
Email::to($to)->send('Subject', 'Message');
}
}
php zerocore run-command ExampleCommand:run [email protected]
Yukarıdaki kullanımın kısa formudur.
php zerocore ExampleCommand:run [email protected]
php zerocore run-external-command ExampleCommand:run [email protected]
# run-uri / run-controller
Konsoldan kontrolcü çalıştırmak için kullanılır.
php zercore run-uri comments/view
Eğer farklı bir proje kontrolcüsüne istek yapılmak isternirse aşağıdaki gibi kullanılabilir.
php zerocore project-name OthersProject run-uri comments/view
# run-class / run-model
Konsoldan kütüphane çalıştırmak için kullanılır.
php zerocore run-class Migration:create Blog 1
php zerocore run-class MigrateBlog:up
php zerocore run-class MigrateBlog:down
php zercore run-class Migation:delete Blog
# run-function
Konsoldan fonkisyon çalıştırmak için kullanılır.
php zerocore run-function exampleFunction
# run-external-command
Konsol kullanarak Projects/ProjectDirectory/Commands/ dizini altındaki komut sınıflarını çalıştırmak için kullanılır. Kontrolcü üzerinden çalıştırmayı denerseniz hata ile karşılaşırsınız. Bu yapı sadece konsol üzerinden yapılan isteklerle çalışır.
<?php namespace External\Commands;
use Email;
class ExampleCommand extends Command
{
public function run($to)
{
Email::to($to)->send('Subject', 'Message');
}
}
php zerocore run-external-command ExampleCommand:run [email protected]
Yukarıdaki kullanımın kısa formudur.
php zerocore External\ExampleCommand:run [email protected]
# upgrade
Framework'ü güncellemek için kullanılır. Güncelleme başarılı olursa mesaj verir. Başarılı olmazsa herhangi bir çıktı üretmez.
php zerocore upgrade
# undo-upgrade
Gerçekleştirilen son yükseltme işlemini geri almak için oluşturulmuştur. Yükseltmenin istenmeyen bir çalışma biçimine neden olması durumunda bu komut ile yükseltmeyi geri alabilirsiniz.
php zerocore undo-upgrade
# run-cron
Crontab kütüphanesi ve yöntemlerini çalıştırmak için kullanılır. Bu komutla controller, command ve url çalıştırılabilir.
php zerocore run-cron home/main month october day saturday clock 12:00
php zerocore run-cron EmailCommand:sendMail daily
php zerocore run-cron http://example.com/ day monday clock 10:30
# cron-list
Zamanlanmış görevlerin listesini verir.
php zerocore cron-list
# remove-cron
Zamanlanmış görevi silmek için kullanılır. Silme işlemi silinecek görevin cron-list'deki id değerine göre yapılır.
php zerocore remove-cron 1
# create-project
Multi-edition'da Projects/ dizinine yeni bir proje açmak için kullanılır.
php zerocore create-project NewProject
# delete-project
Multi-edition'da Projects/ dizininde ki belirtilen projeyi silmek için kullanılır.
php zerocore delete-project NewProject
# create-controller
Kontrolcü oluşturmak için kullanılır. Proje adı belirtilmezse varsayılan proje dizini(Genellikle Frontend/) içerisinde yer alan Controllers/ dizini içerisinde bu işlem gerçekleşir.
php zerocore create-controller MyController
Varsayılan proje dışında farklı bir proje dizininde bu kontrolcüyü oluşturmak için komut aşağıdaki gibi düzenlenir.
php zerocore project-name Backend create-controller MyController
# delete-controller
Kontrolcü silmek için kullanılır.
php zerocore delete-controller MyController
# create-model
Model oluşturmak için kullanılır. Proje adı belirtilmezse varsayılan proje dizini(Genellikle Frontend/) içerisinde yer alan Models/ dizini içerisinde bu işlem gerçekleşir.
php zerocore create-model MyModel
Varsayılan proje dışında farklı bir proje dizininde bu modeli oluşturmak için komut aşağıdaki gibi düzenlenir.
php zerocore project-name Backend create-model MyModel
# create-grand-model
Grand Model oluşturmak için kullanılır. Model sınıfı GrandModel sınıfı ile genişletilerek oluşturulur.
php zerocore create-grand-model MyModelGrand
# delete-model
Modeli silmek için kullanılır.
php zerocore delete-model MyModel
# create-grand-vision
Veritabanının tüm tabloları ile aynı isimle GrandModel sınıfları oluşturmak için kullanılır. Veritabanı adı belirtilmezse varsayılan olarak ayarlanan veritabanı adı kabul edilir.
php zerocore create-grand-vision
Varsayılan veritabanı dışında başka bir veritabanına ait tablolardan model dosyaları oluşturmak için kullanılır.
php zerocore create-grand-vision OtherDatabase
# delete-grand-vision
Oluşturulan vizyon modellerini silmek için kullanılır.
php zerocore delete-grand-vision OtherDatabase
# generate-databases
Databases/ dizinine tasarladığınız yapının işlenmesini sağlar.
php zerocore generate-databases
# clean-cache
Storate/Cache/ dizininin temizlenmesini sağlar.
php zerocore clean-cache