The index is created with the wrong name
Try this:

```python
class CryptoTransaction(peewee.Model):
    currency = peewee.CharField(default="usdt", index=True, max_length=255)
    hash = peewee.CharField(unique=True)

    class Meta:
        db_table = "crypto_transaction"
        database = peewee.SqliteDatabase(':memory:')
        legacy_table_names = False
```

This gives the following output:

```
crypto_transaction
crypto_transaction_hash
['crypto_transaction_currency', 'crypto_transaction_hash']
```

`make_index_name` doesn't know about model classes or whether they use old or new-style table names, so it just uses the table name itself. I cannot change the default index-name generation without breaking compatibility.
```
The index is created with the wrong name

```python
import peewee
from playhouse.migrate import make_index_name


class CryptoTransaction(peewee.Model):
    currency = peewee.CharField(default="usdt", index=True, max_length=255)
    hash = peewee.CharField(unique=True)

    class Meta:
        db_table = "crypto_transaction"
        database = peewee.SqliteDatabase(':memory:')


for model in [CryptoTransaction]:
    model.create_table()


print(CryptoTransaction._meta.table_name)  # crypto_transaction
print(make_index_name(CryptoTransaction._meta.table_name, [CryptoTransaction.hash.column_name]))  # crypto_transaction_hash
print([index.name for index in CryptoTransaction._meta.database.get_indexes(CryptoTransaction._meta.table_name)])  # ['cryptotransaction_currency', 'cryptotransaction_hash']
```

There is such a code. Using the make_index_name function, it is expected that the index name is crypto_transaction_hash. And when creating a model, the index name is generated in its own way


