1. 预置事件和属性 系统默认为用户提供了预置事件和属性。预置事件包含页面浏览、元素点击和session。预置属性包含统计API能够自动获取的信息,如地域、来源、访问页面、访问时长等,详细内容可在“分析云-管理-数据管理-属性”查看。 2. 自定义事件和属性 2.1. 定义属性 您也可以跳过这一步,在定义事件的过程中添加属性。步骤如下: 打开“分析云-管理-数据管理-属性”,点击“新建属性” 定义
1. 简介 全埋点功能会自动记录元素的点击,可支持回溯点击事件数据,使您不再有错埋、漏埋的担忧。除此以外,您可参考全埋点数据,找到具有监控价值的元素,深挖用户行为数据价值,辅助优化决策。 2. 如何开启全埋点 您可前往【管理-代码管理-埋点设置】对全埋点功能进行管理。强化版及以上的用户默认开通全埋点,推荐保持开通状态,以支持事件功能及相关点击数据的查看。 3. 如何查看全埋点数据 您可前往【事件分
1. 站点已接入百度统计基础报告 您登录后可直接通过“百度统计”平台导航栏切换至“分析云”模块,申请免费试用分析云。 2. 站点尚未接入百度统计平台 百度统计分析云版的使用前提与基础报告相同,步骤为:开通帐户->添加站点->获取并安装代码->申请试用。 2.1. 开通账户 您可前往百度统计官网(tongji.baidu.com)注册百度统计账户,账户分为站长版和客户版。 注:站长版面向广大站长用户
现在假设我们有一个社交网站,有数以百万的用户简介,一些著名用户的简介页面每分钟有数百或数千人访问。 要生成一个用户简介,需要多个 SQL 查询(朋友、相册名称及照片总数、简介信息、最后状态等)。 只要用户没有更新个人资料,在个人资料页显示的信息几乎是静态的。因此,个人资料页的快照可以缓存 5 分钟或 1 小时等。 但这或许还不够。我们正在谈论数以百万的简介和用户。用户不会只查看一些简介页。我们需要
需要分别给人员(Person)和影片(Movie)记录添加一张海报和多张简介图片。让我们从迁移类开始: using FluentMigrator; namespace MovieTutorial.Migrations.DefaultDB { [Migration(20160603205900)] public class DefaultDB_20160603_205900_Pers
为了显示人员参演的影片,我们将在 PersonDialog 添加一个选项卡。 默认情况下,所有编辑对话框(都继承自 EntityDialog)在 MovieTutorial.Web/Views/Templates/EntityDialog.Template.html 使用 EntityDialog 模板。 <div class="s-DialogContent"> <div id="~_T
如果我们要像这样保存演员和角色记录: Actor/Actress Character Keanu Reeves Neo Laurence Fishburne Morpheus Carrie-Anne Moss Trinity 我们需要一张 演员(MovieCast) 表,其内容如: MovieCastId MovieId PersonId Character … … … … 11 2 (Matri
记得当每部影片只有一个流派时,我们可以很容易实现快速过滤:在 GenreId 属性加入了 [QuickFilter] 特性即可。 让我们试着在 MovieColumns.cs 做类似修改: [ColumnsScript("MovieDB.Movie")] [BasedOnRow(typeof(Entities.MovieRow))] public class MovieColumns {
需求发生了变更,我们现在想让影片允许选择多个流派。 为此,我们需要一个 m-n 映射表,它将让我们的电影关联到多个流派。 创建影片流派(MovieGenres)表 和往常一样,我们从迁移类开始: Modules/Common/Migrations/DefaultDB/ DefaultDB_20160528_115400_MovieGenres.cs: using FluentMigrator; n
当我开始写这个教程时,Serenity (NuGet 程序包中含 Serenity 程序集和标准的脚本库)和 Serene (应用程序模板)是 2.1.8 版本。 当你阅读本教程时,你可能在使用更高的版本,所以此时你还不需要更新 serenity 。 但是,我想向你演示如何更新 Serenity 的 NuGet 程序包,以便你在将来能顺利更新版本。 比起使用 Nuget程序包管理器,我更喜欢使用程
添加流派(Genre)字段 我们需要一个检索表来保存影片流派(Movie genres)。在影片类型中我们使用一个枚举,但这次流派可能不是 静态 的,不能再把它定义成枚举。 像往常一样,我们从迁移类开始: Modules/Common/Migrations/DefaultDB/ DefaultDB_20160519_154700_GenreTable.cs: using FluentMigrato
如果我们还想在影片表中保存电视剧和微电影,那我们就需要另一个字段(MovieKind)来存储它。 我们在创建影片(Movie)表时并没有添加 MovieKind 字段,现在我们用另一个迁移类把它添加到数据库中。 不要修改现有的迁移类,因为现有的迁移类不会再次运行。 在 Modules/Common/Migrations/DefaultDB/ DefaultDB_20160519_145500_Mo
添加几条影片记录 在下面的章节中,我们需要一些示例数据,可以从 IMDB 复制一些数据过来。 如果你不想浪费时间输入这些示例数据,可以从下面的链接中获取迁移类: https://github.com/volkanceylan/MovieTutorial/blob/master/MovieTutorial/MovieTutorial.Web/Modules/Common/Migrations/Def
设置导航项标题和图标 当 Sergen 为影片(Movie)表生成代码时,它同时也创建了一个导航项目实体。在 Serene 中,导航项目使用专门的程序集特性创建。 在同一文件夹中打开 MoviePage.cs,在顶部你将找到下面这行代码: [assembly:Serenity.Navigation.NavigationLink(int.MaxValue, "MovieDB/Movie",
自定义字段标题 在我们影片列表和表单中,有一个叫 Runtime 的字段。该字段需要一个整数,表示影片时长(minutes),但在其标题描述中并没有该提示信息。让我们把其标题改为 Runtime (mins)。 有几种方法可以修改标题内容:修改服务器端表单的定义、修改服务器端列的定义、修改网格列表的脚本代码等。但让我们在核心的位置做修改,即修改实体本身,这样实体的标题在所有使用的地方都将得到修改。