filipbs / f-user
为dbwebb.se制作的fUser包
Requires
- php: >=5.4
- mos/cdatabase: dev-master
- mos/cform: 2.x-dev
This package is not auto-updated.
Last update: 2024-09-20 19:19:52 UTC
README
fUser模型基于dbwebb.se用户包Anax MVC。fUser具有改进的功能,包括
- 登录系统
- 对用户搜索进行字符敏感搜索
{info:title=有用信息}请确保配置中存在数据库文件。例如 /config/database_mysql.php{info}
安装
在索引文件中确保DI设置为UserController。为数据库创建DI
$db = new \Mos\Database\CDatabaseBasic();
$db->setOptions(require ANAX_APP_PATH . 'config/database_mysql.php');
$db->connect();
return $db;
});
创建默认路由器
$app->theme->setTitle("Visa alla användare");
$app->dispatcher->forward([
'controller' => 'user',
'action' => 'list',
]);
});
自动生成表
{tip:title=帮助提示}创建一个路由来自动生成具有默认用户的数据库表。
$app->router->add('setup', function() use ($app) {
//$app->db->setVerbose();
$app->db->dropTableIfExists('user')->execute();
$app->db->createTable(
'user',
[
'id' => ['integer', 'primary key', 'not null', 'auto_increment'],
'acronym' => ['varchar(20)', 'unique', 'not null'],
'email' => ['varchar(80)'],
'name' => ['varchar(80)'],
'password' => ['varchar(255)'],
'created' => ['datetime'],
'updated' => ['datetime'],
'deleted' => ['datetime'],
'active' => ['datetime'],
]
)->execute();
$app->db->insert(
'user',
['acronym', 'email', 'name', 'password', 'created', 'active']
);
$now = gmdate('Y-m-d H:i:s');
$app->db->execute([
'admin',
'admin@dbwebb.se',
'Administrator',
password_hash('admin', PASSWORD_DEFAULT),
$now,
$now
]);
$app->db->execute([
'doe',
'doe@dbwebb.se',
'John/Jane Doe',
password_hash('doe', PASSWORD_DEFAULT),
$now,
$now
]);
});
输入 /setup,您的数据库即可使用 {tip}
Anax-MVC
基于PHP和MVC灵感(微)框架/网页模板/样板代码的网站和Web应用程序。
在此处阅读有关它的文章:"Anax som MVC-ramverk" 和此处 "Bygg en me-sida med Anax-MVC"。
基于Anax-base构建,阅读有关Anax-base的文章 "Anax - en hållbar struktur för dina webbapplikationer" 以了解其非MVC变体。
作者:Mikael Roos,me@mikaelroos.se。
许可证
此软件是免费软件,并带有MIT许可证。
外部库的使用
以下外部模块包含在内,并受其自身许可证的约束。
Modernizr
- 网站: http://modernizr.com/
- 版本:2.6.2
- 许可证:MIT许可证
- 路径:包含在
webroot/js/modernizr.js
PHP Markdown
- 网站: http://michelf.ca/projects/php-markdown/
- 版本:1.4.0,2013年11月29日
- 许可证:PHP Markdown Lib版权所有 © 2004-2013 Michel Fortin http://michelf.ca/
- 路径:包含在
3pp/php-markdown
历史
### Anax-MVC的历史
v2.0.5* (2016-04-06)
- 增强CResponse::redirect()以使用框架URL,修复#22。
v2.0.5 (2016-01-15)
- 使用phpcs进行代码风格。
- 通过打印出$di增强异常消息的详细程度。
- 显示有效的路由和控制器,以帮助404调试。
v2.0.4 (2015-04-05)
- 导航栏即使在?存在的情况下也会显示当前项,修复15。
- 更新composer.json并删除对coverall.io的依赖。
- 更新.travis.yml以删除对coverall.io的依赖并不要安装composer.phar。
- 添加短码示例 [BASEURL],[RELURL] 和 [ASSET]。
- 添加使用转发和视图创建的示例代码,修复#13。
CDispatcherBasic->foward()
现在返回一个值,修复#12。- 当头已发送时抛出异常,修复#11。
- 删除在hvm上创建会话时未抛出异常的测试用例。
v2.0.3 (2015-01-12)
- 将自动加载器添加到composer.json中,以使使用composer和require从packagist下载成为可能。
- 在Travis中添加PHP 5.6作为测试环境。
- 为\Anax\Session\CSession添加测试用例。
- 为\Anax\DI\CDI添加测试用例。
- 在$di中创建服务失败时改进异常。
- CNavbar现在适用于菜单项的子类。
- 更正示例
webroot/test/navigation-bar.php
以正确显示当前菜单项。 - 改进了
CDispatcherbasic
中的错误消息。 - 在特质
TInjectable
中改进了错误处理,现在在抛出异常时会提供更详细的关于使用该特质的类的信息。
v2.0.2 (2014-10-25)
- 添加了导航栏的示例以及如何在导航栏中创建URL。
- 为定义为'*'的路由添加了默认路由处理程序。
- 为应用特定文件内容添加了默认目录
app/content
。 - 对错误信息进行了细微调整。
- 对代码格式进行了几处细微的调整。
- 为相对当前前控制器的URL添加了
CUrl::createRelative()
。 - 重新组织并在
webroot/test
中添加了测试程序。 - 在
docs/documentation
和webroot/docs.php
中改进了文档。 - 为phpunit添加了配置文件
phpunit.xml.dist
。 - 添加了
phpdoc.dist.xml
。 - 增强了
Anax\Navigation\CNavBar
,使其菜单项具有类。 - 在
docs/api
中添加了phpdoc。
v2.0.1 (2014-10-17)
- 更新以匹配注释示例。
- 引入并修复了问题(问题编号#1),在此问题中,抛出了异常而不是显示404页面。
- 添加了
CSession::has()
。 - 修复了
CSession->name
中的错误编号#2,它没有使用配置文件来命名会话。 - 添加了
Anax\MVC\CDispatcherBasic
调用每个控制器的initialize
。 - 添加了异常处理以提供403、404和500 HTTP状态代码的视图,并在
webroot/error.php
中添加了示例程序。 - 添加了
docs
以初始化在线文档。 - 添加闪存消息(不存储在会话中)。
- 为CDispatcherBasic添加测试用例,现在在
dispatch()
中抛出异常作为#3。 - 添加了将CForm集成到Anax MVC中的示例,从而在多个地方进行了改进。
- 在
Anax\MVC\CDispatcherBasic
中添加了检查,以真正检查方法是否属于控制器类,而不是使用__call()
。 - 在
Anax\MVC\CDispatcherBasic
中改进了错误处理,并在webroot/test_errormessages.php
中添加了测试用例。
v2.0.0 (2014-03-26)
- 克隆了Anax-MVC,并准备构建Anax-MVC。
- 添加了PSR-0的自动加载器。
- 在标准Anax自动加载器中不抛出异常。
- 在
bootstrap.php
中使用匿名函数设置异常处理程序和自动加载器。 - 在
config.php
和index.tpl.php
中将$anax['style']
添加为内联样式。 - 添加了使用phpunit的单元测试。
- 添加了使用travis的自动构建。
- 在coveralls.io上添加了代码覆盖率报告。
- 在scrutinizer-ci.com上添加了代码质量。
- 为使用依赖注入和服务容器框架添加了主要类。
### Anax-base的历史
v1.0.3 (2013-11-22)
- 在
webroot/config.php
中命名会话允许使用字母数字字符。
v1.0.2 (2013-09-23)
- 在使用ANAX_INSTALL之前需要定义路径。v1.0.1无法正常工作。
v1.0.1 (2013-09-19)
- 在开始会话之前需要包含
config.php
,包括bootstrap.php
,需要自动加载器()。
v1.0.0 (2013-06-28)
- 在Anax的初始文章发布后的第一个版本。
.
..: Copyright (c) 2013 - 2014 Mikael Roos, me@mikaelroos.se