Я использую Umbraco 7.13.1
Я создал пользовательский тип данных, и он работает хорошо.Но теперь мне нужно отобразить данные в шаблон для страницы.
Файл app_pluggin
js
angular.module('umbraco').controller('IBD_HeaderController', function ($scope) {
$scope.model.value.Tag = $scope.model.value.Tag || "default value";
$scope.model.value.HeadingText = $scope.model.value.HeadingText || "default value";
console.log($scope.model);
$scope.SetTag = function () {
$scope.model.value.Tag = $scope.value.Tag
};
});
html файл
<div class="IBD_CMS" ng-controller="IBD_HeaderController">
<div>
<input class="headingTextBox" type="text" ng-model="model.value.HeadingText" ng-change="SetHeading()">
</div>
<div class="HeadingTag">
<label class="TagOption">
<input type="radio" name="HeadingTag" value="h1" ng-model="model.value.Tag" ng-click="SetTag()">
<span>H1</span>
</label>
<label class="TagOption">
<input type="radio" name="HeadingTag" value="h2" ng-model="model.value.Tag" ng-click="SetTag()">
<span>H2</span>
</label>
<label class="TagOption">
<input type="radio" name="HeadingTag" value="h3" ng-model="model.value.Tag" ng-click="SetTag()">
<span>H3</span>
</label>
<label class="TagOption">
<input type="radio" name="HeadingTag" value="h4" ng-model="model.value.Tag" ng-click="SetTag()">
<span>H4</span>
</label>
<label class="TagOption">
<input type="radio" name="HeadingTag" value="h5" ng-model="model.value.Tag" ng-click="SetTag()">
<span>H5</span>
</label>
<label class="TagOption">
<input type="radio" name="HeadingTag" value="h6" ng-model="model.value.Tag" ng-click="SetTag()">
<span>H6</span>
</label>
</div>
</div>
manifest
{
propertyEditors:[
{
alias: "IBD.Heading",
name: "Intelligence By Design Heading",
editor: {
view: "~/App_Plugins/IBD.Heading/IBD.Heading.View.html",
valueType: "JSON"
}
}
],
javascript: [
"~/App_Plugins/IBD.Heading/IBD.Heading.js"
],
css: [
"~/App_Plugins/IBD.Heading/style.css"
]
}
Я могу установить информацию в редакторе содержимого, и она все сохраняется.
Моя проблема заключается в том, как вернуть ее в файл cshtml в виде 2 отдельных значений
т.е. Model.content.ComponentName.HeadingText Model.content.ComponentName.Tag
В настоящее время у меня есть
pageHeading = Model.Content.GetPropertyValue<string>("cartName");
, это возвращает
{"TAG": "H3", "HEADINGTEXT": "МОЯ КОРЗИНА"}
Я хочу это
pageHeading = Моя корзина pageHeadingTag = h3