- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我希望将多张图片附加到 silverstripe 中的页面(最终将充当旋转画廊),并且想知道用户在上传每张图片时是否可以为每张图片添加链接?
最佳答案
是的。这可以通过 has_many
来实现与风俗的关系DataObject
其中包含一个图像和一个链接对象。
在以下示例中,我们有一个 HomePage
有一个 has_many
与 Slide
的关系. Slide
包含 Image
和 Link
.
SilverStripe Lesson 9 -Working with data relationships - $has_many 中有一些关于这个主题的好信息.
我在这个例子中使用的可选排序模块是 SortableGridField .
银条 3.1
幻灯片.php
class Slide extends DataObject {
private static $db = array(
'Title' => 'Text',
'SortOrder' => 'Int'
);
private static $has_one = array(
'HomePage' => 'HomePage',
'Image' => 'Image',
'Link' => 'SiteTree'
);
private static $field_labels = array(
'Image.CMSThumbnail' => 'Image',
'Link.Title' => 'Link'
);
private static $summary_fields = array(
'Title',
'Image.CMSThumbnail',
'Link.Title'
);
private static $default_sort = 'SortOrder ASC';
private static $singular_name = 'Slide';
private static $plural_name = 'Slides';
public function getCMSFields() {
$image = UploadField::create('Image', 'Image');
$image->setFolderName('slides');
$fields = FieldList::create(
TextField::create('Title'),
$image,
TreeDropdownField::create('LinkID', 'Link', 'SiteTree')
);
return $fields;
}
}
class HomePage extends Page {
private static $has_many = array(
'Slides' => 'Slide'
);
public function getCMSFields() {
$fields = parent::getCMSFields();
$slidesFieldConfig = GridFieldConfig_RecordEditor::create();
// The following requires the SortableGridField module installed
$slidesFieldConfig->addComponent(new GridFieldSortableRows('SortOrder'));
$slidesField = GridField::create(
'Slides',
'Slide',
$this->Slides(),
$slidesFieldConfig
);
$fields->addFieldToTab('Root.Slides', $slidesField);
return $fields;
}
}
<% if $Slides %>
<div class="slideshow">
<% loop $Slides %>
<% if $Link %>
<a class="slide" href="$Link.URL" title="Go to the $Link.Title.XML page">
<img src="$Image.URL" alt="$Title" />
</a>
<% else %>
<div class="slide">
<img src="$Image.URL" alt="$Title" />
</div>
<% end_if %>
<% end_loop %>
</div>
<% end_if %>
class Slide extends DataObject {
static $db = array(
'Title' => 'Text'
);
static $has_one = array(
'HomePage' => 'HomePage',
'SlideImage' => 'Image',
'Link' => 'SiteTree'
);
static $singular_name = 'Slide';
static $plural_name = 'Slides';
public function getCMSFields_forPopup()
{
return new FieldSet(
new TextField('Title'),
new SimpleTreeDropdownField('LinkID', 'Slide Link', 'SiteTree'),
new ImageUploadField('SlideImage', 'Slide Image')
);
}
}
class HomePage extends Page {
public static $has_many = array(
'Slides' => 'Slide'
);
public function getCMSFields()
{
$fields = parent::getCMSFields();
$slideManager = new ImageDataObjectManager(
$this,
'Slides',
'Slide',
'Image',
array(
),
'getCMSFields_forPopup'
);
$fields->addFieldToTab('Root.Content.Slides', $slideManager);
return $fields;
}
}
<% if Slides %>
<div class="slideshow">
<% control Slides %>
<% if Link %>
<a class="slide" href="$Link.URL" title="Go to the $Link.Title.XML page">
<img src="$Image.URL" alt="$Title" />
</a>
<% else %>
<div class="slide">
<img src="$Image.URL" alt="$Title" />
</div>
<% end_if %>
<% end_control %>
</div>
<% end_if %>
关于image - Silverstripe Uploadify 添加字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14432739/
如果服务器在使用Uploadify上传文件时返回错误(HTTP响应代码!= 200),则上传的文件将显示红色背景,并显示如下消息: file.jpg (52.78KB) - HTTP Error 表示
本文实例为大家分享了java文件上传和预览实现代码,供大家参考,具体内容如下 1、下载uploadify插件 2、index.html ?
我刚刚实现了 uploadify在我的项目中,我注意到上传过程中似乎有一个重要的安全问题: 上传文件的文件夹作为 javascript 参数提供,因此在客户端。如果用户更改脚本,并为上传填写不同的文件
我正在网络上实现uploadify上传照片,并且成功触发响应,Chrome和IE 8上一切正常,但是每次响应警报弹出时Firefox崩溃,无法单击任何内容,我什至无法关闭警报或Firefox,而Fir
我在 uploadify 设置中使用 auto: false ,单击提交按钮时将开始上传,然后一旦触发 onQueueComplete 事件,表单就会提交。但是,当没有选择文件时,onQueueCom
我想使用 uploadify v.3.1 (flash) 上传图像。我单击“选择文件”,选择一个文件,文件已上传,但最终收到错误消息: haus2.jpg (256KB) - HTTP 错误 (401
我正在使用“Uploadify”JQuery 插件进行文件上传。我阅读了文档并引用了示例,并将代码附加到了我的文件中。一切正常,除了上传文件后,文件名消失了。您可以找到文档here . 文档提到了“o
我如何在codeigniter中实现这个? Uploadify(Jquery) 我的意思是 Controller 是什么?进度如何跟踪?如果用户没有安装flashplayer会发生什么? 我如何检查进
是否可以使用 uploadify 实现单个上传进度条和多个文件上传? 最佳答案 Rails 3.1 应用程序的工作解决方案。 它是用于多个上传的单个进度条,但是...我使用了 jQuery.anima
我使用JQuery插件Uploadify用于上传文件。它在所有浏览器中都能正常工作。但是,如果我像这样通过 .htaccess 实现密码保护 AuthType Basic AuthName "Rest
我正在尝试 Uploadify 来清除上传队列并删除上传的文件。问题是这样的。如果我上传 5 个文件(uploadLimit 为 5 组),它们会第一次上传。但是如果我使用这个清除队列: Clear
开幕式 我有几种形式(在本例中是两种),它们位于使用 Ext-JS 的选项卡中。 我还有用于主要 JavaScript 脚本/编程的 jQuery 框架。 last 是一个保存状态的 Javascri
好的,我有一个表单下拉列表 Cheesecakes Fruitcakes 和一个隐藏的文本输入 在我的 jquery/javascript 中 $('#select_category').cha
我正在尝试使用 Uploadify 上传多个文件, $('#fileuploadinput').uploadify({ uploader: '/js/uploadify/uploadify.s
有没有办法在uploadify中限制上传到1个文件? 我在文档中看不到任何内容?我对最大文件大小进行了位排序,但找不到一种方法将其限制为仅允许选择一个文件。 最佳答案 尝试将“multi”设置为 fa
我正在尝试实现 uploadify,以下是我的设置 $('#file_upload').uploadify({ 'uploader' : 'uploadify/uploadify.s
我正在寻找在 jQuery 插件中拥有不同文件类型的解决方案 Uploadify . 考虑以下过程:您想要使用您选择的程序打开一个文件。从默认的操作系统对话框开始,您可以在下拉菜单中选择不同的文件类型
我有一个 Send.aspx 页面,上面有一个 uploadify 控件。 Upload.ashx 处理文件上传。 我正在将文件记录添加到 Upload.ashx 文件中的 sql 数据库,完成后我需
我正在尝试使用 uploadify 将图像上传到远程服务器。对于跨脚本问题或其他问题,我已经做了我能想到的一切。 这是我所做的。 上传功能中的“始终”脚本访问。我的 ww2 服务器上有一个 cross
我只是想为标题添加一个简单的文本字段并将其发布到 uploadify.php,但它不起作用。 Javascript: $(function() { $("#file_upload").uplo
我是一名优秀的程序员,十分优秀!