Настраиваемый соединительный столик в страпе - PullRequest
0 голосов
/ 11 февраля 2020

Я недавно начал работать над страпой и смотрел на отношения внутри модели в их документации. Мой сценарий таков. У меня есть модель с именем Course и другой названный тег. У них много-много-много отношений между ними. Это то, что . / Api / course / models / course.settings. json имеет, когда я установил связь между ними, названную tag2.

 {
  "connection": "default",
  "collectionName": "course",
  "info": {
    "name": "course"
  },
  "options": {
    "increments": true,
    "timestamps": true
  },
  "attributes": {
    "image_link": {
      "type": "string"
    },
    "created_by": {
      "columnName": "created_by_id",
      "plugin": "users-permissions",
      "model": "user"
    },
    "updated_by": {
      "columnName": "updated_by_id",
      "plugin": "users-permissions",
      "model": "user"
    },
    "title": {
      "type": "string"
    },
    "short_description": {
      "type": "text"
    },


    "slug": {
      "type": "string",
      "unique": true
    },
    "tags2": {
      "collection": "tag",
      "via": "courses",
      "dominant": true
    }
  }
}

Когда я определяю отношение с помощью админ-панели, сама strapi создала соединительную таблицу с именем courses_tags_2_s__tags_courses .

Вот как выглядит модель тега

  {
    "connection": "default",
    "collectionName": "tag",
    "info": {
      "name": "tag",
      "mainField": "ui_label"
    },
    "options": {
      "increments": true,
      "timestamps": true
    },
    "attributes": {
      "code": {
        "type": "string"
      },
      "description": {
        "type": "string"
      },
      "created_by": {
        "plugin": "users-permissions",
        "model": "user",
        "columnName": "created_by_id"
      },
      "updated_by": {
        "plugin": "users-permissions",
        "model": "user",
        "columnName": "updated_by_id"
      },
      "ui_label": {
        "type": "string"
      },
      "courses": {
        "via": "tags2",
        "collection": "course"
      }
    }
  }

У меня есть пара вопросов

1) Есть ли способ настроить таблицу соединений как courses_tags? то есть, переопределяя strapi one

2) Я установил свой mainField как "ui_label" в tag.settings. json, но в панели администратора при редактировании содержимого таблицы курса (строк в таблице курса), в соответствующей поле tag2 Я вижу поле «код», показанное там вместо «ui_label». Как установить mainField?

Примечание: У меня есть настройки с сервером mysql.

1 Ответ

0 голосов
/ 12 февраля 2020

поэтому, чтобы ответить на ваш первый вопрос, в настоящее время нет способа переопределить таблицу соединений между двумя моделями. Это полностью автоматически сгенерировано Strapi.

По второму вопросу эта часть документов устарела. Для управления отображаемой информацией вам потребуется использовать конфигурацию менеджера контента в панели администратора.

Здесь короткое видео - https://www.youtube.com/watch?v=tzipS2CePRc&list=PL7Q0DQYATmvhlHxHqfKHsr-zFls2mIVTi&index=5&t=0s

...