好吧,伙计们,最终我按照以下步骤解决了这个问题。
首先,我们不需要在数据库表中创建任何列来存储任何数据文件上传名称在数据库表中的任何字段中十月CMS会自动进入系统文件桌子。所以我只是删除了'社交标志' 字段通过builder plugin.
然后我删除了旧的上传文件从我当前的控制社交链接插件 using 生成器插件 from admin并简单地创建一个新表,而无需与任何表的字段建立任何关系。
然后我就去了社交链接.php模型,并确保此代码存在
public $attachOne = [
'social_logo' => 'System\Models\File'
];
还要确保您的mode应该image和你的type can be 上传文件因为我能够在编辑记录部分看到这样的图像..您可以根据您的需要更新此代码,但这对我来说很好,所以我把这个代码...
字段.yaml
fields:
social_logo:
label: 'Social Logo'
mode: image
span: auto
type: fileupload
然后我去了管理区域并创建了测试模板并在Code选项卡我现在放置此代码只是为了检查单个记录,
use technobrave\sociallinks\Models\Sociallink;
function onStart()
{
$this['model_data'] = Sociallink::first();
}
在模板标记中,我简单地把这个
<img src="{{ model_data.social_logo.getPath() }}" />
哇哦,我可以看到图像..:)
此外,如果您想要多个数据,那么您可以将此代码放入Code Tab,
use technobrave\sociallinks\Models\Sociallink;
function onStart()
{
$this['model_data'] = Sociallink::all();
}
您的 html 标记选项卡将包含以下代码,
<h2>Image List</h2>
<ul>
{% for current_model_data in model_data %}
<h3>{{ current_model_data.id }}</h3>
<img src="{{ current_model_data.social_logo.getPath() }}" />
{% endfor %}
</ul>
感谢大家的支持..希望这对OctoberCMS新手有帮助..非常感谢..
谢谢 ..