letsdrink / ouzo Goto Github PK
View Code? Open in Web Editor NEWOuzo Framework - PHP MVC ORM
Home Page: https://github.com/letsdrink/ouzo
License: MIT License
Ouzo Framework - PHP MVC ORM
Home Page: https://github.com/letsdrink/ouzo
License: MIT License
Right now it is ugly:
Config::overrideProperty(array('db', 'dialect'), 'postgres'));
New proposal:
Config::overrideProperty('db', 'dialect')->with('postgres');
It will be compliant with other methods in Config class (e.g. Config::clearProperty('db', 'dialect');)
Add redirect in routes.
Proposition:
Route::get('/', Redirect::to('/users'));
Route::get('/', Redirect::toAbsolute('http://ouzoframework.org'));
Logger always uses a name passed in the first call to Logger::getLogger.
Names passed in subsequent calls to Logger::getLogger are ignored.
ViewHelper::addFile
parameter: $panel2_0
.
function addFile(array $fileInfo = array(), $panel2_0 = true)
.
Maybe good idea will be add methods to testing array keys e.g.:
key
keysOnly
keysExactly
I have column type bool in the mysql dialect, and I try to get value of this column:
$bool = $model->my_bool_column;
var_dump($bool);
I receive string(1) "0"
if false
or string(1) "1"
if true
.
disabled by default
evict cache after every update/insert, transaction rollback
should have a better interface.
remove default buttonLong class
If I set routes:
Route::get('/albums/search', 'albums#search');
Route::resource('albums');
It's OK. But if I:
Route::resource('albums');
Route::get('/albums/search', 'albums#search');
Request /albums/search
has wrong match.
Try compare to first GET /albums/:id
.
Add method to checking sequences array values.
[aaa, bbb, ccc, ddd, eee]->containsSequence('ccc', 'ddd') - Ok
[aaa, bbb, ccc, ddd, eee]->containsSequence('ccc', 'eee') - Fail
In the Form::textField()
doesn't have possibility to pass $options
parameter.
Add a static method to create objects from array of attributes.
Framework uses wrong session dir:
Session::startSession():17
$path = "/tmp" . str_replace('panel2.0', '', $config['prefix_system']) . "thulium_sess";
Ticket::alias('t')
->leftJoin('customers')->alias('rt')->on('user_id' => '3')
->join('customers', Joins::left()->alias('rt')->on('user_id' => '3'))
->join(Joins::left('customers')->as('rt')->on('rt.user_id' => '3'))
->leftJoin('customers', 'rt', array('rt.user_id' => '3')
extract the one from thulium
I think will be better to generate form elements without div
tags, this tag complicate custom form styling.
We have wrong namespace in tests/model. Should be: namespace Test\Model
.
$_SESSION
is used directly in Controller.php, FrontController.php, ViewHelper.php and other places.
assertions names are inconsistent e.g. assertDownloadFile (should be assertDownloadsFile).
Some of them are strange like assertRendersNotEqualContent.
assertAttributesEquals seems not to be used.
query should not execute anything.
There should be a method e.g. 'execute' that returns affected rows.
We don't have a possibility to create nested forms, e.g.:
<input name="user[phone_number][]" type="text"/>
<input name="user[phone_number][]" type="text"/>
<input name="user[phone_number][]" type="text"/>
insert and update in Db do not use dialect!
They both should use QueryExecutor.
Wrong parsing URI with query string: /controller/action?search=string
.
e.g.
User::findById(23, [ 'with' => 'children', 'join' => 'department']);
or
User::findById(23, [ 'include' => 'children', 'join' => 'department']);
User::all([ 'include' => 'children', 'join' => 'department']);
Ouzo should be able to render .twig files.
There can be a config prop defining template engine.
ModelFormBuilder::hiddenField should not take value parameter
We need something that allows us to use DELETE
method, now we must create form with appropriate method. Maybe some helper to generate this automatically?
We dont have password type input.
In model validation methods we must have a possibility to setting error field.
Assert::thatArray(array(1, 2, 3))->excludes(6);
Remove duplicated:
if (!isset($id)) {
throw new \InvalidArgumentException("Missing parameters");
}
maybe rename it to endFormTag
Strings::startsWith fails for empty prefix
If set controller name Index
I receive 404 apache error.
Currently it accepts only array
rename ConfigPanel
There's no possibility to specify content type in DownloadHandler->streamMediaFile. It's always send application/octet-stream.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.