标签: admin

将最终价格添加到 Magento 中的管理产品网格?

如何将“最终价格”(考虑到所有目录规则和特殊价格)添加到 Magento 管理中的产品网格?

2012 年 12 月 10 日更新我使用 v1.1.8 进行了大量自定义,所以我刚刚重新安装了 v.1.1.8 并将 addFinalPrice() 添加到产品网格中的 _prepareCollection(),但现在我所有get 是管理产品管理中的半空白屏幕。有任何想法吗?

admin magento

5
推荐指数
1
解决办法
3970
查看次数

如何检查特定应用程序是否具有管理员权限,并转到其管理员屏幕?

背景

Android 应用程序可以使用管理策略获得一些特殊权限,例如打开锁定屏幕。

因此,在用户撤销其管理员权限之前,无法卸载这些应用程序。

我希望有一个功能来检查给定的应用程序(给定应用程序的包名称)是否具有管理员权限,如果是,我将打开此应用程序的管理员设置页面,以允许用户撤销其权限。

问题

事实证明,已经有一个函数可以做到这一点。

首先你得到一个 DevicePolicyManager 的实例:

DevicePolicyManager dpm=(DevicePolicyManager)context.getSystemService(Context.DEVICE_POLICY_SERVICE);
Run Code Online (Sandbox Code Playgroud)

然后你应该调用isAdminActive,并得到真/假的结果。

但是,该函数的参数是 ComponentName,这意味着它不仅需要包名称,还需要应用程序特定类的路径。

另一种方法是使用getActiveAdmins查询所有活动的管理应用程序。

稍后,您可以使用以下命令进入管理页面:

final Intent intent=new Intent();
intent.setComponent(new ComponentName("com.android.settings","com.android.settings.DeviceAdminSettings"));
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

或者更具体地说,要启用/禁用应用程序管理员权限:

final Intent intent=new Intent();
intent.setComponent(new ComponentName("com.android.settings","com.android.settings.DeviceAdminAdd"));
intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN,componentName);
activity.startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

然而,这两种方式似乎有点hacky,因为它们不使用android的官方API,这可能会改变android版本和roms。

问题

检查给定应用程序(包名称)是否具有管理员权限的最佳方法是什么?

进入管理页面的最佳方式是什么?有没有更安全的方法去那里?也许是我对安全屏幕意图所做的回退机制(由于某种原因,我在 API 中找不到)?


答案

阅读这篇文章的答案后,我决定分享调查结果:

如果你想安全,你可以告诉用户自己去管理屏幕,只引导他到安全屏幕:

intent=new Intent(Settings.ACTION_SECURITY_SETTINGS);
context.startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

但是,我认为下一种方法应该适用于所有设备:

Intent intent=new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
final PackageManager packageManager=context.getPackageManager();
final List<ResolveInfo> resolveInfos=packageManager.queryIntentActivities(intent,0);
if(resolveInfos!=null&&!resolveInfos.isEmpty())
  try
    {
    final ResolveInfo resolveInfo=resolveInfos.get(0);
    intent=new Intent();
    intent.setComponent(new ComponentName(resolveInfo.activityInfo.packageName,resolveInfo.activityInfo.name));
    intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN,componentNameResult);
    context.startActivity(intent);
    return true;
    }
  catch(final Exception e)
    {}
Run Code Online (Sandbox Code Playgroud)

如果失败,您可以随时使用我编写的任何方法,最后,调用安全的方法。

settings android admin android-intent

5
推荐指数
1
解决办法
2335
查看次数

Sonata Admin:防止在特定条件下持续存在

我正在使用奏鸣曲管理员。我有两个实体:假期条目 + 员工假期条目 (1:m)

在我的假期条目管理课程中:

  • 用户选择我想要休假的员工(从多对多关系中)。
  • 通过 Employee Vacation Entry 实体对每个员工进行验证。

    class VacationEntryAdmin extends Admin {
    
        // some 
        // content
        public function prePersist($cv)
        {
            // some 
            // content
            $validator = $this->getValidator();
            $errors = $validator->validate($employeeVacationEntry);
            if (count($errors) > 0) {
                foreach ($errors as $error) {
                    $errorsString = $error->getMessage();
                    $employeeName = $error->getRoot()->getEmployee()->getName();
                    $this->getRequest()->getSession()->getFlashBag()->add("danger", $employeeName . ': ' . $errorsString);
                }    //I'd like to stop the persistence of all the Vacation Entry here.
            }
            $em->persist($employeeVacationEntry);
        }
    
    }
    
    Run Code Online (Sandbox Code Playgroud)

hook admin symfony doctrine-orm sonata

5
推荐指数
0
解决办法
436
查看次数

在 OpenLDAP 中创建第二个数据库/域

我有一个带有"dc=domain1,dc=com"olcSuffix的 LDAP 服务器。我想"dc=domain2,dc=com"在同一台服务器上创建第二个域。

使用这个 LDIF 文件:

dn: olcDatabase={3}bdb
对象类:olcDatabaseConfig
对象类:olcBdbConfig
olc 数据库:{3}bdb
olc 后缀:dc=domain2,dc=com
...

我有一个错误: "no global superior knowledge" error because dc=domain2,dc=com does not fit below the existing dc=domain1,dc=com tree.

我的问题是如何在 openldap 中并排运行两个单独的域?我是否必须创建一个"dc=com"根并将现有的移动到它"dc=domain1"下面然后创建"dc=domain2",或者是否有某种方式在同一服务器中独立支持两棵树?

admin openldap

5
推荐指数
1
解决办法
6522
查看次数

有没有办法对管理模型中的列进行排序?姜戈

有时我们可以点击列,然后表格将按点击的内容排序,但有些不可点击,我相信那些不可点击是因为模型中的字段不是外键或 M2M

我想知道是否有办法让它们也可以点击排序?

例如以下,

title 和 created_at 是可点击的,但不是 SET

在此处输入图片说明

在此先感谢您的任何建议和帮助。

python sorting django admin

5
推荐指数
1
解决办法
1003
查看次数

您需要“我自己”的许可才能删除文件夹 - 如何修复

我正在尝试以管理员身份删除文件夹,但收到消息“您需要 UserAdam 的许可才能删除文件夹”。问题是,我以 UserAdam 身份登录!我也尝试将所有者更改为管理员也无济于事。

windows permissions admin

5
推荐指数
4
解决办法
1万
查看次数

Linux (zip):如何找到所有不可读的文件?

我只是尝试通过以下命令压缩文件夹及其内容:

zip -r ./mytarget.zip ./mysource
Run Code Online (Sandbox Code Playgroud)

最后我收到警告

zip warning: Not all files were readable
files/entries read:  141595 (4.2G bytes)  skipped:  57 (1.8M bytes)
Run Code Online (Sandbox Code Playgroud)

我想知道跳过了哪些文件

如何找到所有不可读的文件?我没有sudo那个服务器的权限。

提前致谢!

linux terminal zip admin server

5
推荐指数
2
解决办法
4389
查看次数

5
推荐指数
1
解决办法
1521
查看次数

Laravel Voyager:显示条件关系的下拉菜单

我在后端使用 Laravel 和 Voyager。我在 Posts 模型和 Categories 模型之间建立了关系。添加新帖子时,我可以使用下拉菜单选择相应的类别。

如何根据某些条件使此下拉菜单显示类别?(假设只有子类别)

php admin backend voyager

5
推荐指数
1
解决办法
1203
查看次数

如何使用测试客户端填写 Django 表单

我想测试我的 Django 表单,但出现此错误

django.core.exceptions.ValidationError: ['ManagementForm data is missing or has been tampered with']
Run Code Online (Sandbox Code Playgroud)

这样做:

 self.client.post(self.url, {"title" : 'title', "status" : 2, "user" :1})
Run Code Online (Sandbox Code Playgroud)

而我的模型只需要这些字段......

谢谢 :)

编辑1:这是表格:

class ArticleAdminDisplayable(DisplayableAdmin):

    fieldsets = deepcopy(ArticleAdmin.fieldsets)
    list_display = ('title', 'department', 'publish_date', 'status', )
    exclude = ('related_posts',)
    filter_horizontal = ['categories',]
    inlines = [ArticleImageInline,
               ArticlePersonAutocompleteInlineAdmin,
               ArticleRelatedTitleAdmin,
               DynamicContentArticleInline,
               ArticlePlaylistInline]
    list_filter = [ 'status', 'keywords', 'department', ]

class ArticleAdmin(admin.ModelAdmin):

    model = Article
Run Code Online (Sandbox Code Playgroud)

关于文章模型有太多的继承,所以你必须相信我唯一需要的字段(模型)是标题、状态和用户。

python forms django model admin

5
推荐指数
1
解决办法
3044
查看次数