我有一个有两个FieldGroups 的表单,其中一个FieldGroup我有一个SelectionGroup.
在SelectionGroup_ItemS IN的形式显示出来FieldGroup,但单选按钮来选择的选项不显示的.如果我删除FieldGroup它然后再次工作.
我看的框架模板,如果我改变FieldGroup_holder.ss SmallFieldHolder到FieldHolder的单选再次出现,并正常工作.我试过按照模板看看哪一个不服从SelectionGroup但我一直迷路.
这是一段代码示例
$fields = FieldList::create(
FieldGroup::create(
TextField::create('Name', 'Name')
),
FieldGroup::create(
SelectionGroup::create(
'Test1or2',
array(
SelectionGroup_Item::create(
'Test1', array(
TextField::create('Test1', 'Test1')
),
'Test1'
),
SelectionGroup_Item::create(
'Test2', array(
TextField::create('Test2', 'Test2')
),
'Test2'
)
)
)
)
),
FieldList::create(
FormAction::create('submit', 'Submit')
)
Run Code Online (Sandbox Code Playgroud) 我正在使用Twitter Bootstrap来创建可折叠的文本部分.+按下按钮时,这些部分会展开.我的html代码如下:
<div class="row-fluid summary">
<div class="span11">
<h2>MyHeading</h2>
</div>
<div class="span1">
<button type="button" class="btn btn-success" data-toggle="collapse" data-target="#intro">+</button>
</div>
</div>
<div class="row-fluid summary">
<div id="intro" class="collapse">
Here comes the text...
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
有没有办法更改按钮显示-而不是+扩展部分后(并更改回+再次折叠)?
附加信息:我希望有一个简单的基于twitter-bootstrap/css/html的解决方案来解决我的问题.到目前为止,所有响应都使用JavaScript或PHP.因此我想添加一些关于我的开发环境的更多信息:我想在基于SilverStripe(版本3.0.5)的网站中使用此解决方案,这对使用PHP和JavaScript都有一些影响.
本地我这样做是为了转储和移动数据库,将silverstripe 2.3升级到2.4:
mysqldump --opt --default-character-set=latin1 --skip-set-charset --user=$root -p$password $oldDatabase -r db.sql
iconv -f LATIN1 -t UTF8 db.sql > db_utf.sql
CREATE DATABASE $newDatabase CHARACTER SET utf8 COLLATE utf8_swedish_ci; FLUSH PRIVILEGES; GRANT ALL PRIVILEGES ON $newDatabase . * TO '$newUser'@'localhost'; FLUSH PRIVILEGES;
SET NAMES utf8; SOURCE db_utf.sql;
Run Code Online (Sandbox Code Playgroud)
它的工作原理,但在服务器Ubuntu 8.04上,使用mysql Ver 14.12 Distrib 5.0.51a.我得到了疯狂的√Π租船人而不是øæåØÆå.
谁知道我哪里出错了?
我正在尝试选择一个不是门户网站的好CMS.我的所有研究都让我相信SilverStipe是最好的选择.我想要一些意见/印象.
感谢您的任何想法.
编辑:我决定尝试一下.我有一段时间后,我会发布自己的答案.似乎基于缺乏响应,没有庞大的用户群.(至少谁与Stack Overflow社区相交.)
虽然我没有想过在我自己的网站上部署它,但是我认识的人给我发了一个名为SilverStripe的CMS链接,这是我以前从未听说过的.我阅读了他们的网站,看了他们的演示并玩了一遍,等等.它看起来像是一个由自定义PHP框架支持的CMS,他们称之为Sapphire.从我可以在他们的网站上收集并使用他们的演示,它可能会像他们所说的那样好(和容易)(一旦你超越任何学习曲线,看起来很小,考虑到它看起来很像其他PHP框架和CMSes).
有没有人在这里使用SilverStripe部署,维护或开发CMS?如果是这样,从开发人员的角度来看,你能否对它有所了解?
我还在StackOverflow上找到了关于SilverStripe的早期问题,但从开发的角度来看,我比用户或管理员的观点更感兴趣.
我已经DataObjects在它们包含大量内容时使用了版本控制,现在我想知道是否可以将版本化应用于many_many关系?
假设我有以下内容:
class Page extends SiteTree
{
private static $many_many = array(
'Images' => 'Image'
);
}
Run Code Online (Sandbox Code Playgroud)
然后ORM将为Page_Images我创建一个表来存储关系.为了具有版本化关系,将需要更多表(例如Page_Images_Live).
有没有办法告诉ORM创建版本化关系?当用上述Page * – * Images关系查看上面的例子时,我不希望Image该类被版本化,而是关系.例如.这样的事情:
Version Stage:
---
PageA
Images ( ImageA, ImageB, ImageC )
Version Live:
---
PageA
Images ( ImageA, ImageC, ImageD, ImageE )
Run Code Online (Sandbox Code Playgroud)
甚至可以开箱即用吗?
我已经将一个站点上传到实时服务器,导入了数据库并更新了mysite/_config.php中的数据库连接信息,但是收到以下错误:
SilverStripe Framework requires a $databaseConfig defined.
Run Code Online (Sandbox Code Playgroud)
这似乎来自framework/main.php,它正在检查我以确保我的配置已定义.这是我的配置:
global $databaseConfig;
$databaseConfig = array(
"type" => 'MySQLDatabase',
"server" => 'localhost',
"username" => 'xxxxx',
"password" => 'xxxxx',
"database" => 'xxxxxx',
"path" => '',
);
Run Code Online (Sandbox Code Playgroud)
我以相同的方式将我的网站发布到我的一台服务器上,以便客户端在设置实时之前进行检查,并且没有任何问题.
任何人都有任何想法可能会发生什么?
我想在编辑页面视图的现有选项卡"设置"中添加一个字段(在屏幕截图中标记).
我试过这个:
$fields->addFieldToTab('Root.Settings', new TextField('Intro'));
Run Code Online (Sandbox Code Playgroud)
但它只是在包含附加字段的辅助选项卡"主要内容"旁边添加了一个新选项卡.

如何在模板内完成?我用ArrayData使用模板循环中的键来访问模板中的值,但是如果我有一个没有键的任意字符串数组,我用什么变量来访问这些值?
如果在我的控制器中我有这个:
public function ArrayList()
{
$ArrayList = new ArrayList(array('this', 'is', 'a', 'test'));
return $ArrayList;
}
Run Code Online (Sandbox Code Playgroud)
这在我的模板中:
<% loop $ArrayList %>1<% end_loop %>
Run Code Online (Sandbox Code Playgroud)
为了让模板吐出"这是一个测试",我应该用1来代替1?
我使用名为SilverStripe的框架...我们目前正在将旧网站迁移到此框架上.问题是旧站点URL以.php或.html结尾,而在新站点中则没有.
我需要修改第二个重写规则,以便将请求泵送到main.php而不使用任何.html或.php扩展名.
在我目前的.htaccess中,我有以下规则:
# Turn off index.php handling requests to the homepage fixes issue in apache >=2.4
<IfModule mod_dir.c>
DirectoryIndex disabled
</IfModule>
SetEnv HTTP_MOD_REWRITE On
RewriteEngine On
# Enable HTTP Basic authentication workaround for PHP running in CGI mode
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Deny access to potentially sensitive files and folders
RewriteRule ^vendor(/|$) - [F,L,NC]
RewriteRule silverstripe-cache(/|$) - [F,L,NC]
RewriteRule composer\.(json|lock) - [F,L,NC]
# Process through SilverStripe if no file with the requested name exists.
# Pass through the …Run Code Online (Sandbox Code Playgroud) silverstripe ×10
php ×3
.htaccess ×1
css ×1
forms ×1
html ×1
javascript ×1
mysql ×1
mysqldump ×1